Недавно я перевел приложение ASP.Net (3.5) на новый сервер, и у него возникла нечетная проблема, связанная с устранением неполадок.Веб-сайт ASP.Net создает новый сеанс при каждой загрузке
При загрузке каждой страницы независимо от того, какой браузер я использую (IE, FF, Chrome) ASP.Net/IIS выдает мне новый сеанс на каждой загрузке страницы, забыв о предыдущем сеансе, который он вызвал.
У меня есть простая страница для тестирования это следующим образом:
<asp:Button ID="Button1" Visible="true" runat="server" Text="Button" />
<%= HttpContext.Current.Session("Test")%>
<br /><br />
<%= Session("GlobalTest") %>
<a href="Test.aspx">Reload the page</a>
в коде у меня есть это для кнопки:
HttpContext.Current.Session("Test") = DateTime.Now.ToLongTimeString
В Global.asax
Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
' Code that runs when a new session is started
Session("GlobalTest") = "Session Created on : " + DateTime.Now.ToLongTimeString()
End Sub
Когда вы нажимаете кнопку, она изначально отображает значение сеанса просто отлично. Перейдите к перезагрузке страницы, либо по ссылке, либо просто загрузите ее, и информация (за исключением Global, которая теперь обновляется в новое время) исчезнет.
В web.config, сеанс настройки таким образом:
<sessionState mode="InProc" timeout="15" useHostingIdentity="false" cookieless="false" />
Кто-нибудь испытывал похожее на это?
Сессия зависит от 'cookies'. Как вы настраиваете 'httpCookies' на web.config? – Aristos
У меня сейчас нет httpCookies в web.config. – Patrick
Затем добавьте его и убедитесь, что вы настроили домен. – Aristos