.NET StateServer - 没有它,应用程序将无法运行

时间:2013-12-18 20:24:56

标签: .net iis session-state

所以在昨天发布到生产期间,我们重新启动了状态服务器并开始在我们的网站上收到500个错误,直到状态服务器重新联机。

我们网站上唯一使用会话的页面是用于验证码的BotDetect程序集。所有其他页面也都失败了。

所以我决定在dev(通常使用InProc)中重新创建

  1. 我将开发环境设置为使用本地状态服务器
  2. 我停止了状态服务器服务,我得到了同样的错误
  3. 奇怪 - 我甚至无法从应用程序的路径请求文本文件(test.txt)而不会出现相同的错误。
  4. 由于状态服务器不可用,整个应用程序应该关闭似乎很奇怪 - 当然有人会访问会话时它应该运行吗?

    任何想法,这是我收到的错误,即使我请求文本文件或图像:

    Unable to make the session state request to the session state server. Please ensure that the ASP.NET State service is started and that the client and server ports are the same.  
    

1 个答案:

答案 0 :(得分:0)

好的,我找到了罪魁祸首。

事实证明,解决方案中有一个使用会话状态的类,这就是造成崩溃的原因。

导致我陷入兔子洞的原因是我的测试崩溃了.txt文件。

原来这是因为我们使用RequestReduce并在web.config中进行了以下设置

<modules runAllManagedModulesForAllRequests="true">

导致文本和图像通过.NET并导致一些与会话相关的代码运行。