移动到新服务器后,Web 应用程序重复丢失会话变量

Repeating loss of session variables occurring with web application after moving to new server

我有一个旧的 Web 应用程序,以前 运行 在 windows 2003 服务器上。当我将它移至新的 Windows 2008 服务器时,我开始收到以前从未遇到过的错误。该应用程序使用 windows 登录。访问应用程序后,系统会要求用户登录。之后,他们可以免费使用应用程序。但是,问题是在使用一段时间后,用户将被引导退出并要求重新登录。该系统也比以前慢得多。它在 IIS7 上运行。在我看来,会话变量丢失了,但我不确定为什么会这样。

有趣的是,当用户再次登录时,他们通常可以使用该应用程序更长的时间,然后才会被引导退出并被要求再次登录。另外值得一提的是,似乎服务器上的用户越多,问题就越不突出。

还值得一提的是,我尝试将应用程序移动到另一台 2008 服务器,并且在那台服务器上运行良好。这让我相信问题出在服务器设置的某个地方。我并排查看了两台 2008 服务器的设置并注意到了差异,但无法找到会导致此类错误的差异。一个可能值得注意的区别是无法正常工作的服务器是 32 位的,而正常工作的服务器是 64 位的。虽然,我看不出这种差异如何导致应用程序丢失会话变量,但仍然可以正常工作。

附加信息:

如能就此问题提供任何帮助,我们将不胜感激。

谢谢。

确保您的应用程序池 运行 在 4.0 .Net Framework 下,并检查您的应用程序池标识。当您使用7.0 iis时,请确保您使用集成模式。