.NET MVC 会话超时,即使在添加会话状态后也是如此
本文关键字:会话状态 添加 会话 MVC 超时 NET | 更新日期: 2023-09-27 18:30:24
application:
-.net MVC 3/c#/SQL Server 2008
问题:
- 离开应用程序无人看管不超过5分钟后,必须再次登录。
- 有时即使在应用程序内工作时,我也会在某个地方单击,它将我带回登录屏幕。
- 没有出现任何类型的错误弹出窗口,只需再次登录即可。
我知道这篇文章有一些线程,但我想在我的 web.config 文件中添加我当前使用的代码。我尝试在里面添加会话超时标签,但问题仍然存在。
我没有粘贴所有代码,但我正在添加我认为与此问题相关的代码,如果我缺少其他内容,请告诉我。
这是我添加的:
<sessionState mode="InProc" timeout="200000"/>
<customErrors mode="Off"/>
<authentication mode="Forms">
<forms loginUrl="Login/Login">
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>
我还有什么遗漏的吗?我觉得添加 sesstionstate 行后没有任何变化。据我所知,没有会话状态行,默认值为 30 分钟,但我在此时间之前被踢出局。
我也看到了一些 sesstionstate 设置,其中超过了我添加的行,所以不确定我是否在那里遗漏了一些东西。
感谢您的任何建议。
在 ASP.NET 中,会话超时和表单身份验证票证超时是不同的概念。这些值存储在不同的 Cookie 中,并且不相关。要增加超时,请参阅KB910443并尝试修改 web.config 的 <authentication>
标记,如下所示:
<authentication mode="Forms">
<forms loginUrl="Login/Login" timeout="200000" slidingExpiration="true">
</forms>
</authentication>
您是否自己实例化了身份验证票证? 然后检查那里的超时。
此外,您可以检查您使用 jQuery 是否空闲超时。