ASP.NET IIS7 的会话超时是什么?

3

我知道这是一个常见的问题,但我尝试了所有我找到的建议,但似乎都没有对我起作用。

我有一个由asp.net开发的网站,托管在Windows专用服务器上。我想增加会话超时时间(不是应用程序超时时间),也就是说,我希望会话持续更长时间。

我尝试通过在web.config文件中添加以下行来编辑:

<sessionState timeout="60"></sessionState>

我尝试按照这篇文章的步骤在iis中更改此值:

http://technet.microsoft.com/en-us/library/cc725820(v=ws.10).aspx

我的web.config文件中的身份验证部分如下:

<authentication mode="Windows"/>

这些选项似乎都不起作用。会话值在5分钟(或更短时间)后变为 null。我已经登录,等待了近6分钟,在尝试访问另一个页面时,会话值变成了 null。

如果有任何帮助,将不胜感激。

2个回答

0

首先检查Windows事件日志,确保工作进程没有被强制回收。(事件查看器->Windows日志->系统)

你的代码中可能有一些导致工作进程自行回收的问题。 输入图像描述

你可以在IIS =>池应用 =>高级设置中更改会话超时时间来进行这些更改。

enter image description here enter image description here enter image description here


0

尝试在 global.asax 文件中执行此操作

void Session_Start(object sender, EventArgs e) 
    {
        // Code that runs when a new session is started
        Session.Timeout = Your Number here;
    }

嗨,萨米尔。谢谢你的回答,但它没有起作用。在本地测试时似乎可以工作,但一旦上传到我的服务器上,会话只持续5分钟。我已经将global.asax上传到根文件夹中,也许这不是正确的位置? - Gonzalo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接