2014-09-29 6 views
2

Vb.net Asp.net 웹 양식 응용 프로그램을 배포하려고하는데 문제가 있습니다.Asp.net의 일부 세션에서 ASP.NET 세션이 끊어짐

우리는 포스트 백 (전부는 아님)에서 크롬의 일부 aspx 페이지에서 세션을 잃는 것처럼 보이는 약간 이상한 문제가 있습니다.

인터넷 익스플로러와 파이어 폭스에서 완벽하게 잘 보입니다.

이 문제는 IIS 6에 배포 할 때만 발생하며 로컬에서 디버깅 할 때는 발생하지 않습니다.

HTTPS를 사용 중입니다.

누구에게 아이디어가 있거나 왜 조사에 집중할 수있는 이유가 있습니까?

자바 스크립트 오류가 발견되지 않았습니다. 코드 숨김에서 오류가 발생하지 않습니다.

도움 주셔서 감사합니다.


업데이트 1 : 감사합니다. 우리는 모든 페이지의 쿠키에 동일한 ASP.NET_SessionId를 가지고 있습니다. 이것은 결코 변하지 않습니다 ... 1. 첫 페이지 입력, 양식 기입, 세션 변수 추가 2. 세션 변수가있는 두 번째 페이지 입력 page_load 이벤트. 3. 두 번째 페이지에서 양식을 채우고 제출하면 page_load 이벤트가 발생하고 세션 변수가 있는지 확인한 다음 누락되었습니다. ...이 세션 변수를 지우는 코드에는 아무 것도 없습니다. 이것은 웹 응용 프로그램 프로젝트입니다.

우리가 양식 인증을 사용하고 있다고 생각합니다. 공용 응용 프로그램이 될 수 있으므로 익명으로 허용됩니다. 이것은 Chrome에서만 발생하며 IIS에 배포 할 때만 발생합니다. 로컬로 디버깅 할 때 일어나지 않습니다. Visual Studio 2010 테스트 웹 서버. 약간의 환경 문제가있을 수 있습니까? 매우 실망 스럽습니다! :/나는 현재 일하고 있지 않기 때문에 다른 세부 사항을 두 번 확인해야 할 것입니다. 이것은 우리가 최근에 상속 한 코드이며 원래 작성자는 우리와 함께하지 않습니다. 모든 도움을 주셔서 대단히 감사합니다! 정말 고마워.

업데이트 2 : 페이지의 SaveStateComplete 이벤트와 포스트 백 사이의 세션 변수가 손실됩니다.

  • 를 Page_Load - QuoteCarousel.aspx - 은 포스트 백 = 거짓 세션 ID입니다 : yu2afsxpafu0qmzbkxqp1dd4. 세션의 항목 : 23
  • Page_SaveStateComplete QuoteCarousel.aspx 세션 ID : yu2afsxpafu0qmzbkxqp1dd4. 세션의 항목 수 : 32
  • Page_PreInit QuoteCarousel.aspx 세션 ID : yu2afsxpafu0qmzbkxqp1dd4. 세션의 항목 수 : 7
  • Page_Init QuoteCarousel.aspx 세션 ID : yu2afsxpafu0qmzbkxqp1dd4. 세션의 항목 : 8
  • Page_InitComplete QuoteCarousel.aspx 세션 ID : yu2afsxpafu0qmzbkxqp1dd4. 세션에서 항목 : 8
  • 를 Page_Load - QuoteCarousel.aspx - 은 포스트 백 = 진정한 세션 ID입니다 : yu2afsxpafu0qmzbkxqp1dd4.세션중인 항목 : 8
+0

'ASP.NET_SessionId'라고하는 쿠키가있을 가능성이 높습니다. 포스트 백 동안 또는 쿠키가 제거 된 경우 해당 값이 변경된 경우 알려주십시오. – Dalorzo

+0

또한 세션이'proc' 또는 'state server'인지 여부를 알려줍니다 '세션 시간 초과 란 무엇입니까? – Dalorzo

+0

'웹 응용 프로그램 프로젝트'또는 '웹 사이트 프로젝트'는 어떤 유형의 프로젝트에 배포됩니까? – Dalorzo

답변

0

응용 프로그램이 웹 사이트의 실제 폴더에 있습니다. 이것을 가상 폴더로 변경하고 문제를 해결했습니다. 나는 아직도 문제의 원인에 관해 명확하지 않다.

0

일부 사람들에게 도움이 될 수 있습니다. 나는 똑같은 문제가 있었다. IE에서 근무한 Firefox에서 근무했습니다. Chrome에서 세션이 손실되었습니다. 기본적으로, 나는 설정하고 gridview를 바인딩하고 다음 세션 변수를 설정했다. 포스트 백이 트리거 될 때 코드가 RowCommand 이벤트에서 실행될 때까지 세션 변수는 모두 손실되었습니다.

<!-- 
    <add key="PageInspector:ServerCodeMappingSupport" value="Disabled" /> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
--> 

: (나는 내 ​​웹 사이트에 일부 MVC 요소를 추가 할 때 자동으로 추가 얻었다 고 생각)이 작동하는 이유

내가 정확히 모르겠지만, 나는 Web.config의에서 이러한 값을했다 이 가치에 대해 논평하면서 모든 것이 Chrome에서 작동하기 시작했습니다. 내가 추가 한 MVC 참조를 실제로 사용하지 않았으므로이 솔루션을 사용하는 것이 좋지만 왜 작동하는지 잘 모르겠습니다.

관련 문제