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

问题描述

我有一个ASP.NET MVC应用程序,该应用程序配置为使用Web Garden运行。 使用以下命令将会话状态模式在web.config中设置为StateServer:

<system.web>
  <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" timeout="360" />
</system.web>

ASP.NET状态服务在同一台计算机(而不是远程计算机)上运行,因此上述ip在端口42424上设置为127.0.0.1。它被配置为“自动”,并且始终在运行。

并且应用程序池的最大工作进程数设置为4。

我经常在事件日志中收到有关状态服务器的许多警告消息。低于错误( 事件ID 1310):

Event code: 3009 
Event message: No se pudo realizar la solicitud al servidor de estado de la sesión. Detalles: última fase='Leyendo respuesta del servidor de estado',código de error=0x8007000E,tamaño de datos salientes=0 
Event time: 05/11/2020 16:22:45 
Event time (UTC): 05/11/2020 15:22:45 
Event ID: 2e332c8f5171461e9a635a55ead92129 
Event sequence: 24813 
Event occurrence: 40 
Event detail code: 50016 
 
Application information: 
    Application domain: /LM/W3SVC/2/ROOT-2-132490528848804756 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: C:\inetpub\wwwroot\MyMvcApp\ 
    Machine name: MyServer
 
Process information: 
    Process ID: 4816 
    Process name: w3wp.exe 
    Account name: MyDomain\MyAppPoolIdentityAccount
 
Exception information: 
    Exception type: HttpException 
    Exception message: No se puede realizar una solicitud de estado de sesión al servidor de estado de sesión. Compruebe que el servicio de estado ASP.NET se ha iniciado y que los puertos de cliente y servidor son los mismos. Si el servidor se encuentra en un equipo remoto,compruebe el valor de HKEY_LOCAL_MACHINE\SYstem\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection para asegurarse de que acepta más solicitudes. Si el servidor se encuentra en el equipo local y si el mencionado valor del registro no existe o está establecido en 0,la cadena de conexión del servidor de estado debe utilizar 'localhost' o '127.0.0.1' como nombre de servidor.

    TRANSLATED TO ENGLISH:
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. If the server is on a remote machine,please ensure that it accepts remote requests by checking the value of HKEY_LOCAL_MACHINE\SYstem\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection.
If the server is on the local machine,and if the before mentioned registry value does not exist or is set to 0,then the state server connection string must use either 'localhost' or '127.0.0.1' as the server name.
 
Request information: 
    Request URL: http://my.mvcapp.com/Wizard/MakeOrder
    Request path: /Wizard/MakeOrder
    User host address: 172.28.X.XX 
    User: MyDomain\OneUser 
    Is authenticated: True 
    Authentication Type: Negotiate 
    Thread account name: MyDomain\MyAppPoolIdentityAccount 
 
Thread information: 
    Thread ID: 67 
    Thread account name: MyDomain\MyAppPoolIdentityAccount 
    Is impersonating: False 
    Stack trace: 
 
 
Custom event details: 

我确保ASP.NET状态服务已启动并正在运行,并且确保客户端和服务器端口是正确的端口,分别是127.0.0.1和42424。另外,我还有注册表项HKEY_LOCAL_MACHINE \ SYstem \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection。由于ASP.NET状态服务在同一台计算机上运行,​​因此该密钥存在且将其设置为0(无需将其设置为1)。

所以,我不明白为什么要说检查状态服务器.....有什么想法吗?我花了很多天在谷歌上搜索,但是我无法解决这个问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...