如果用户在特定时间内不与网页交互,如何使ASP会话过期

本文关键字:交互 何使 ASP 过期 会话 网页 用户 定时间 如果 | 更新日期: 2023-09-27 18:28:18

我的项目使用带有C#的asp.net。

如果用户在特定时间内不会与网站互动,我想使Session过期(即,如果用户在未来10分钟内不会与该网站互动,会话将过期)。

我对session timeout使用web.config配置,如下所示。

<sessionState mode="InProc" timeout="10" />

问题:session每10分钟过期一次。即使用户正在与网站交互,结果是用户必须在每10分钟后再次登录。

但是,我希望session应该在10分钟内过期。如果用户在10分钟之内没有与网站交互。

如果用户在特定时间内不与网页交互,如何使ASP会话过期

您是否使用身份验证方法?

如果你是,你可以添加属性

SlidingExpiration="true"

在配置中,如果超过一半的时间,它会重置超时

http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.slidingexpiration(v=vs.110).aspx

你应该检查

1:尝试使用sessionstate mode=stateserver。

2:您的IIS应用程序池重置或重新启动时间。您的应用程序池是否在修复一段时间后重新启动或回收?

3:检查您是否正在使用其他地方的会话超时设置。它只能在web.config文件中。

4:尝试使用Server.Transfer而不是Response.RRedirect()(只需尝试一下。如果以上不起作用)