如果其他人遇到同样的问题并得到解决,请分享他的解决方案:
问题:
我在asp.net mvc3上完成了网站,会话经常到期,在几秒到最多5分钟之间.在web.config中,我将超时设置为2880分钟,我还将sessionstate设置为stateserver.我还删除了使用默认值的超时,仍然存在问题:
<sessionState mode="StateServer"></sessionState> <authentication mode="Forms"> <forms loginUrl="~/Account/logon"/> </authentication>
我制作了一个样本网站,其中只包含登录功能和一些数据库交互来模拟环境,然后我得到一个更稳定的超时2分50秒(测试9次),这仍然是不正确的,因为我设置了2880分钟web.config中.
在用户登录时的代码内部,我创建了一个AuthenticateTicket并将其保存到cookie中,然后在安全页面中我检查了User.Identity并且控制器有过滤器[Authorize],所以当会话到期时我被发送到登录页面.
在同一个托管服务器上,我有其他使用.NET 3.5 Web表单的旧应用程序,对于他们来说会话没问题,只有新的mvc3和mvc3会话经常到期.感谢您提供的任何线索.