在IIS 6(以及其他版本太过分)中,属性中有一个会话超时设置 - >主页目录标签 - >配置按钮 - >选项标签。看起来像这样:
在ASP.NET web.config中有一个SessionState设置,如下所示:
<system.web>
<sessionState timeout="120" />
<!-- etc .. -->
</system.web>
他们是否有任何机会相关?他们设置相同的东西,还是不同的东西?
答案 0 :(得分:43)
他们不一样。 IIS会话超时适用于传统ASP页面。 web.config一个用于asp.net。
答案 1 :(得分:11)
据我所知,IIS设置对ASP.NET会话没有影响 - 这些必须在web.config中设置。
答案 2 :(得分:3)
您还应该考虑应用程序池空闲超时。通过单击应用程序所在的应用程序池上的“属性”(IIS 6)或“高级设置”(IIS 7.5),可以找到应用程序池的设置。
确保此值至少设置为会话超时,以确保所有会话在整个会话超时期间保持不变。
这两个值彼此依赖的原因是因为会话信息实际存储在应用程序池的工作进程中。也就是说,如果工作进程因任何原因被关闭或终止,会话信息将丢失。