我有一個ASP.NET很奇怪的問題在Windows 2012 4.5會話asp.net 4.5會話丟失,回來後秒
說明: 會議做工精細。我瀏覽網站,登錄,訪問使用會話的配置文件和其他aspx頁面。然後從一秒到另一秒,在任何aspx頁面上,會話都會丟失,在每個aspx頁面上。幾秒鐘後,會議又回來了。所以如果我在問題出現之前登錄了,我就失去了會話值,幾秒鐘後他們又回來了。 每個瀏覽器都會發生這種情況(IE,FF,Chrome)。 我還沒有嘗試用戶InProc,狀態服務器,Appfabric,但都是一樣的,所以必須做一些與.net會話處理的「頂級」或與IIS,無論... 不確定,但主要是,主觀上我認爲在會議「失落」之前,請求非常緩慢。瘋狂,他們在......之後「回來」,所以他們並沒有真正迷失。
有什麼想法?
UPDATE
我加了一些調試運行代碼。看看登錄,它最容易重現。這裏的隱藏代碼:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("StepA/")
End Sub
Protected Sub btnSignin(ByVal sender As Object, ByVal e As EventArgs)
Response.Write("Step0/")
If System.Web.Security.Membership.ValidateUser(loginEmail.Value, loginPassword.Value) = True Then
Response.Write("Step1/")
FormsAuthentication.SetAuthCookie(loginEmail.Value, False)
Response.Write("Step2/")
Dim ui As New UserInfo
Response.Write("Step3/")
ui.InitUserInfo(loginEmail.Value)
Response.Write("Step4/")
If Request.UrlReferrer.OriginalString.Contains("Login.aspx") = True Then
Response.Write("Step5/")
Response.Redirect("/admin/Default.aspx")
Else
Response.Write("Step6/")
Response.Redirect(Request.UrlReferrer.OriginalString)
End If
Else
Response.Write("Step7/")
loginfailed.Visible = True
End If
End Sub
所以...運行一切正常,inital負荷,打印出 「步驟A」。 然後登錄後Step0到5或6
然後,由於任何原因,會話是「丟失」,上面的代碼不打印出0到6步看起來像點擊事件不開火。 那麼......但是,然後,重新啓動AppFabric Cache,哦,不知道...它工作 正如我以前寫的...與State Server相同,然後重新啓動StateServer解決問題和Inproc,重新啓動IIS或應用程序的決心它......
只是要清楚。此會話丟失或所有aspx頁面上出現問題,而不僅僅是登錄。到處使用會議至少
你有任何HTML META標籤?一些元標籤可能會混淆你的會話。有關ASP.NET會話的更多信息,請訪問:http://msdn.microsoft.com/en-us/library/ms178581%28v=VS.85%29.aspx – 2013-03-30 19:42:24
是的,我有 < meta name =「Googlebot」content =「all」/> –
這些標籤都不會搞亂你的會話。 – 2013-03-30 21:01:10