我正在Web.Config中修改一个用C#编写的ASP.NET应用程序的会话时间,目前我将超时设置为120分钟,如下所示:
<sessionState mode="InProc" cookieName="Application_SessionId" timeout="120"/>
此值有限制吗?因此,如果我希望将其设置为24小时(1440分钟),那么这将适用吗?
这是带有MVC 2.0的ASP.NET 4.0版
答案 0 :(得分:21)
Timeout属性不能设置为大于525,600分钟(1年)的值。默认值为20分钟。
缺点:如果您有大量用户并且会话超时增加,您将遇到性能问题,您的非活动会话将保留在Web服务器内存中,这可能导致应用程序池回收,这将导致所有会话丢失用户。
答案 1 :(得分:5)
默认情况下,该值为 20 ,最大值为 525600 ( 525600 分钟相当于一年)。在 Web.config 文件中维护以下代码以维持最大会话超时:
<system.web>
<sessionState mode="InProc" timeout="525600"></sessionState>
...
</system.web>
上面一个为我工作。请参阅here
答案 2 :(得分:3)
我不确定将会话超时设置为24小时是否合理,但是我认为将其设置为最多365天是合适的。