无法向会话状态服务器发出会话状态请求

我们的网站目前有这个问题。基本上,只有当我们点击一些特定的链接时,它才会弹出一个新窗口。
这是我们收到的错误消息: < br/>

无法向会话状态服务器发出会话状态请求。
请确保 ASP.NET 状态服务已启动 客户端和服务器端口是相同的。 < br/> 如果服务器在 远程计算机,请确保它接受远程请求 检查... 的价值 HKEY _ LOCAL _ MACHINE 系统 CurrentControlSet Services aspnet _ state 参数允许远程连接。
如果服务器位于本地计算机上,并且 注册表值不存在或设置为0,则状态为 服务器连接字符串必须使用“ localhost”或“127.0.0.1”作为 服务器名称。 < br/> < br/> 目标站点: < br/> Void MakeRequest (StateProtocolVerb,System.String,StateProtocolExonly, Int32,Int32,Int32,Byte [] ,Int32,Int32,SessionNDMakeRequestResults 参考文献)

这是包含 sessionstate 标签的 webconfig:

<sessionState mode="StateServer" timeout="45" />

我已经检查了 ASP.NET 状态服务,它目前已经启动并设置为自动

我已经将错误消息中指定的注册表设置为1,但仍然无法工作。

149754 次浏览

检查一下:

stateConnectionString="tcpip=server:port"

是正确的。还请检查默认端口(42424)是否可用,您的系统没有阻塞系统端口的 firewall

  1. 开始-> 行政工具-> 服务
  2. 右键单击 ASP.NET 状态服务,然后单击“开始”

此外,您还可以将服务设置为自动,以便在重新启动后能够正常工作

如果您需要将 HKEY _ LOCAL _ MACHINE SYSTEM CurrentControlSet Services aspnet _ state Parameter AllowRemoteConnection 更改为1,请记住在更改参数后将 ASP.net 状态服务更改为 重新开始

另一个需要检查的是是否启用了 Windows 防火墙,因为这可能会阻塞端口42424。

当一些 ASP.NET 安装被破坏时,我也遇到过同样的问题。在这种情况下,他们建议使用 运行 aspnet _ regiis-i-able

我发现一些开发人员由于某种原因会在 IIS 之外的一个意想不到的位置定义服务器的私有 IP,比如一个非标准配置文件(即不是 web.config)或一个文本文件。这可能导致内部操作失败,即使服务已经启动,端口没有被阻塞,reg 键是正确的,等等。

特别是 Kaseya,它将一个名为 serveripinteral.txt 的文件放在 VSA 服务器的根 IIS 目录中。我已经看到你的错误的文本,当有人运行自己的 Kaseya 实例更改服务器的内部 IP。服务器将是可访问的,IIS 将作出响应,登录页面将出现-但登录将失败与引用的消息。

我最近遇到了这个问题,没有一个解决方案能够解决它。问题是过度使用了会话中存储的数据集。代码中有一个缺陷,导致会话大小增加了10倍。

在 msdn 博客上有一篇文章也谈到了这一点。 Http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

我使用了一个函数来编写自定义跟踪消息,以测量实时站点上会话数据的大小。

在 Windows 运行窗口的运行面板中键入 Services.msc。它会列出我们系统中所有的窗口服务。现在我们需要启动 ASP.net 状态服务,如图中所示。enter image description here

你的问题会得到解决的。

我的一个客户也面临着同样的问题。

 (1) Open Run.


(2) Type Services.msc


(3) Select ASP.NET State Service


(4) Right Click and Start it.

虽然不是最好的答案,但也是一种选择:

在 web.config 中注释给定的行。