2
我正在创建一个ASP.NET MVC 5应用程序。当应用程序停留几分钟(大约15分钟)时,会话超时,我无法再访问会话值。什么触发了早期会话超时
但是在我web.config
文件,我有下面的代码行:
<sessionState mode="InProc" timeout="30" />
所以,你会希望会议在30分钟后超时,遗憾的是这没有发生。如果我将会话时间缩短到5分钟,那么会话将在5分钟内超时,但如果时间更长,则会有30分钟的时间,但时间太早。
什么事件或情况可能触发早期会话超时?
您正在使用InProc会话状态,因此它成为应用程序池的职责,将会话保留在内存中。应用程序池是否被回收?您是否正在运行负载平衡的环境,在几分钟后可能会将其发送到其他服务器/进程? – sisve
您可能需要为应用程序池设置空闲超时设置。默认时间是20分钟 –
可能的重复[如何设置会话超时超过20分钟?](https://stackoverflow.com/questions/1725925/how-to-set-session-timeout-more-than-20 -min) – Juan