IIS 8.5 .NET经典会话超时

时间:2017-10-23 17:24:26

标签: session iis

我最近将基于网络的条形码扫描系统迁移到新服务器和更新版本的IIS。

我一直在浏览这个网站的解释(以及其他几个网站)来回答这个问题,但似乎没有任何帮助。日志记录,IIS或应用程序日志不会记录会话何时到期,只记录新会话的启动。我觉得我几乎尝试过所有事情,我一定会错过一些东西......

运行IIS 8.5 / MS Server 2012 R2 / Amazon EC2实例

该站点是在IIS中的默认站点下运行的应用程序。应用程序池是我设置的运行.NET Classic和.NET CLR版本的“No Managed Code”的应用程序池。应用程序池设置为在空闲超时时挂起(已尝试我认为的所有设置),并且循环间隔设置为默认的1740分钟(29小时)。

用户在大约30分钟不活动后会收到会话超时 - 这很奇怪,因为这些设置的默认值(如果我错过设置一个)是20分钟,20分钟的测试不会使会话失效。这是一个问题,因为扫描枪最终会丢失扫描,因为用户错过了会话​​过期。这会导致批次跟踪问题。

我已将应用程序池空闲超时设置为0以进行测试。 我已将asp超时设置为20小时。 应用程序上没有web.conf文件,但应用程序所在的默认站点上有一个文件。 web.conf文件有

<system.web>
     <session.State timeout = "34560" />
</system.web>

我在IIS中安装了asp功能以尝试尝试处理此会话超时问题,但这并未影响该行为。一些解释建议在asp.net功能上设置会话变量。这不是一个asp站点,它是一个index.htm,使用ISASPI处理程序重定向到.dll文件,因此asp.net功能似乎不是必要的。一旦它到达.dll,所有函数都包含在这个.dll中。也许我还需要安装该功能?

虽然我对IIS的经验不足,但在服务器更改之前我没有遇到过这个问题。如果我可以肯定地确定IIS不是问题,那么我可以推动其他团队解决.dll文件中的问题。

任何帮助都会受到赞赏。

此致,

SWhite

1 个答案:

答案 0 :(得分:0)

原则上应用程序端的内容根本与IIS设置无关。难怪我无处可去。

感谢有机会提问。