【发布时间】:2015-05-01 18:48:17
【问题描述】:
我正在开发一个包含会话的网络项目。 我在网络应用程序上有几个页面: Logon.aspx - 如果用户验证成功,则创建一个新会话:
伪:
If User.connected = True Then
Session("isLogin") = True
Response.Redirect("Content.aspx")
End If
在“Content.aspx”的Page_Init事件中:
If Session("isLogin") = False Then
Response.Redirect("Logon.aspx")
End If
Web.config 设置:
<forms loginUrl="~/Logon.aspx" timeout="50" />
<sessionState mode="InProc" timeout="60">
当我在本地 (IIS Express) 运行它时,一切都按预期工作。
但是,当我在 IIS 服务器上运行它时,几分钟后会话重置并让我进入登录.aspx。
IIS 服务器信息:
我使用的是 IIS 8.5
空闲超时(分钟):60
常规时间间隔(分钟):1740
如何修复此会话重置?
附:
我已阅读您的所有建议(直到 2015 年 3 月 14 日)。
另外,请阅读session-timeout-in-asp-net 的所有建议),但找不到解决方案。
【问题讨论】:
-
除非用于测试目的,否则不要使用进程内会话。可以关闭或回收 IIS 工作进程,这只会删除所有会话。如果你不打算学习 IIS,你应该学习。
标签: asp.net vb.net session iis-8.5