asp.net 默认的 session state 模式是 in proc(进程内),数据是在网站的应用程序池里面保存的。这样在 web.config 设置的超时时间,是在应用程序池没有发生回收的基础上才是有效的。
所以Session的回收时间受两方面的影响,一个是程序中的配置时间,比如web.config中的sessionState时间设置;另外一个就是IIS默认的进程进程模型-> 闲置超时设置,和回收->固定时间间隔设置;
要让Session的存储时间长一些,就修改这两处的时间设置。如果把IIS的回收时间间隔和进程闲置超时都设置为0,就等于禁止了这两项回收行为,只受程序session时间设置控制