超时到期的速度比预期的要快 - ASP.NET

时间:2015-07-09 19:58:42

标签: c# asp.net webforms iis-7 web-config

我有一个运行良好的应用程序,但是,当我在页面上没有交互的情况下停留很短时间时,身份验证会关闭并返回登录页面。我试图在我的网络配置上将其设置为20分钟或更长时间。

<authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" timeout="20" />
</authentication>

<sessionState timeout="20"></sessionState>

...     

<customErrors mode="Off" />
    <machineKey decryptionKey="AutoGenerate,IsolateApps" validationKey="AutoGenerate,IsolateApps" />

关于应用设置

<add key="aspnet:MaxHttpCollectionKeys" value="2000" />

我在ISS中看到了所有内容,尝试按照我在此处和微软社区中找到的一些步骤进行操作,但会话继续以超出我想要的速度过期。

1 个答案:

答案 0 :(得分:0)

你的SessionState pacman?如果是,则应用程序池上的任何回收都将清除您的会话。这可能是由您重建应用程序以及IIS中的多个设置引起的。如果您希望会话持续更长时间,我建议您使用InProcStateServer SessionState。

如果您不想更改SessionState,请查看App Pool上的设置:

  1. 打开IIS
  2. 选择应用程序池
  3. 右键单击您的应用程序池,然后选择“高级设置”
  4. 查找空闲超时(分钟)并增加到更大的值。