(C#)在Web.config中设置Session的超时时间没有反应,请教!有点急,先谢谢了!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(C#)在Web.config中设置Session的超时时间没有反应,请教!有点急,先谢谢了!相关的知识,希望对你有一定的参考价值。

设置为:<sessionState mode="InProc" timeout="2" cookieless="false"/>

IIS为了保护服务器,有一个“回收”的概念
启动IIS管理器->应用程序池->右键->属性->回收选项卡,有一项是默认就起作用的,就是第一项:“回收工作进程(分钟)”默认值1740分钟,大约29个小时。他是什么意思呢?我个人理解:在session.timeout之后再过1740分钟自动把所有仍在保持的session清除。这个值最大可设为4000000,大概是2700多天!我直接取消了,不用他自动回收!问题终于解决。
另外这个属性对话框中还有其它几项:第二项应该是连接的用户超过了一定数目回收。第三项是到某一个时间就自动回收。在“性能”选项卡中“在空闲此时间段后关闭工作进程”,这里就是设置IIS默认session.timeout时间的地方了。默认值20分钟,这里同样最大值可设为4000000,和在ASP页中设置
session.timeout最大值为1440不同。在这里设置超过大于1440的值是否起作用,我没作测试,我想应该是可以的。那为什么在ASP页中session.timeout的值最大只能是1440在IIS的属性中却能设的那么大呢?应该是属于一种保护机制:ASP页的session.timeout的值哪个用户都可以设,IIS里却只有管理员可以设,两者的权限不同,所以设置的范围就不同了。
我想上面的回答对你应该有帮助
若帮助大您的话,请及时采纳哈
参考技术A 看看IIS服务器的应用程序池的属性->性能->WEB-园的最大工作进程数是不是大于1?
如果是的就设置为1本回答被提问者采纳
参考技术B IIS里设置session时间

java中设置session过期时间

Web容器

apache-tomcat-8.0.26confweb.xml中设置

<session-config>  
     <!-- 时间单位为分钟   -->  
     <session-timeout>30</session-timeout>  
</session-config>  

Web工程

在项目工程的web.xml中设置

     <session-config>
           <!-- 时间单位为分钟   -->  
           <session-timeout>15</session-timeout>
     </session-config>

Java代码

  //以秒为单位
   session.setMaxInactiveInterval(30*60);

三种方式优先级:web容器 < web项目 < java代码

 

以上是关于(C#)在Web.config中设置Session的超时时间没有反应,请教!有点急,先谢谢了!的主要内容,如果未能解决你的问题,请参考以下文章

asp.net当我在web.config中设置“sessionState mode=StateServer”

在 web.config 中设置的当前文化

在 Web.Config 中设置允许的 IP

如何在 web.config 中设置会话超时

如何在 ASP.NET Core 的 web.config 中设置会话超时

在 web.config 中设置具有身份验证的代理以访问 Internet