繁体   English   中英

设置会话超时的时间

[英]Setting time for a session to timeout

我知道这个问题在这里已经问了很多,但是人们提供的解决方案似乎都不对我真正有用。 我试图延长会话在我的网站上保持活动状态的时间,我尝试使用以下方法修改web.config:

  <sessionState timeout="45"/> 

并在后面的代码中设置Session.Timeout,但是这些功能按预期工作。 我希望使会话尽可能长地持续,但是到目前为止,它们持续约10分钟,直到我开始遇到问题为止。

如果您的会话状态设置为InProc,并且您有多个Web服务器或一个Web花园,则您的会话状态很容易丢失。

有关更多详细信息,请参见MSDN文档

Asp.Net会话管理有两种模式。

InProc

会话丢失是此模式下的常见问题。 一段时间后,IIS会继续回收工作进程,这会导致会话数据丢失。

请查看下面的链接以获取更多信息。

检查一下

下面的CodeProject文章中有解决此问题的方法。

防止ASP.NET中的会话超时

OutProc

在此会话管理模式下,web.config的设置将正常工作。 请查看下面的链接以获取更多详细信息。

检查这个

在WebConfig中:

<configuration>
  <system.web>
     <sessionstate timeout="20" /> 
  </system.web>
</configuration>

默认情况下为20分钟。 根据您的需要进行更改。

在IIS中检查

  1. 打开IIS,单击“应用程序池”。

  2. 选择您的应用程序的应用程序池。

  3. 右键单击->选择属性。 在“性能”选项卡中,将“空闲超时”设置为“空闲.....分钟后关闭工作进程的所需分钟”。

之后,重新启动IIS。

为什么Session.Timeout不适用于您的网站

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM