我正在使用带有C#的asp.net作为我的项目。
如果用户在特定时间内不与网站互动,我希望过期Session
(例如,如果用户在未来10分钟内不与网站互动,则会话过期。)
我对web.config
使用session timeout
配置,如下所示。
<sessionState mode="InProc" timeout="10" />
问题:但每隔10分钟就会过期session
。即使用户正在与网站进行交互,结果是用户必须在每10分钟后一次又一次地登录。
但是,我希望session
在10分钟后到期。如果用户在10分钟内没有与网站互动。
答案 0 :(得分:3)
您使用的是身份验证方法吗?
如果你是,你可以添加属性
SlidingExpiration="true"
进入配置,如果&gt;它会重置超时已经过了一半的时间
答案 1 :(得分:0)
你应该检查一些事情
1:尝试使用sessionstate mode = stateserver。
2:您的IIS应用程序池重置或重新启动时间。您的应用程序池是否在修复时间段后重新启动或回收?
3:检查你是否正在使用其他会话超时设置。它只是在web.config文件中。
4:尝试使用Server.Tranfer而不是Response.Redirect()(试试吧。如果上面不起作用)