No se puede realizar la solicitud de estado de la sesión al servidor de estado de la sesión


122

Nuestro sitio tiene actualmente este problema. Básicamente, solo sucede cuando hacemos clic en algunos enlaces en particular donde aparecerá una nueva ventana.
Este es el mensaje de error que recibimos:

No se puede realizar la solicitud de estado de la sesión al servidor de estado de la sesión.
Asegúrese de que se inicie el servicio ASP.NET State y de que los puertos del cliente y del servidor sean los mismos.
Si el servidor está en una máquina remota, asegúrese de que acepta solicitudes remotas verificando el valor de HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection.
Si el servidor está en la máquina local, y si el valor de registro mencionado anteriormente no existe o está establecido en 0, entonces la cadena de conexión del servidor estatal debe usar 'localhost' o '127.0.0.1' como el nombre del servidor.

sitio de destino :
MakeRequest vacío (StateProtocolVerb, System.String, StateProtocolExclusive, Int32, Int32, Int32, Byte [], Int32, Int32, SessionNDMakeRequestResults ByRef)

este es el webconfig que contiene la etiqueta sessionstate:

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

He comprobado el servicio de estado de ASP.NET y actualmente está iniciado y configurado en automático

He configurado el registro indicado en el mensaje de error en 1, pero aún no funciona.

Respuestas:


305
  1. Inicio–> Herramientas administrativas -> Servicios
  2. Haga clic derecho en el servicio de estado de ASP.NET y haga clic en "iniciar"

Además, puede configurar el servicio en automático para que funcione después de un reinicio


2
¡A veces descubrí que solo funciona después de reiniciar el servicio de estado de ASP.NET un par de veces!
Matthew Lock

2
Trabaja como un encanto para mí
Arun

1
El nombre exacto es aspnet_state.
AmiNadimi

1
Eres mi héroe ... lo estaba buscando durante tanto tiempo.
G43beli

1
me has ahorrado ... horas moviendo a todos ... y llegas con esta solución fácil ... de verdad ... gracias
Roger Tello

26

Si necesita cambiar HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection a 1, recuerde reiniciar el servicio de estado de ASP.net después de cambiar el parámetro.


@hikkenmikke ¿Cómo se verifica y cambia HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection
Pomster

8

Mira esto:

stateConnectionString="tcpip=server:port"

es correcto. También verifique que el puerto predeterminado ( 42424) esté disponible y que su sistema no tenga un firewallque esté bloqueando el puerto en su sistema


1
Tengo el mismo problema, verifiqué que mi servicio de estado de sesión se está ejecutando correctamente, pero sigo recibiendo el mismo mensaje. Aquí está mi configuración web.config: <sessionState mode = "StateServer" stateConnectionString = "tcpip = 127.0.0.1: 42424" sqlConnectionString = "data source = 127.0.0.1; Trusted_Connection = yes" cookieless = "false" timeout = "30" />
lstanczyk

5

Escriba Services.msc en el panel de ejecución de la ventana de ejecución de Windows. Enumerará todos los servicios de Windows en nuestro sistema. Ahora debemos iniciar el servicio Asp .net State como se muestra en la imagen.ingrese la descripción de la imagen aquí

Su problema se resolverá.


Recibí este error después de reiniciar debido a Windows Update. Seguí estos pasos y funcionó. Gracias.
Mauricio Arias Olave hace

4

Uno de mis clientes se enfrentaba al mismo problema. Se toman los siguientes pasos para solucionar este problema.

 (1) Open Run. 

 (2) Type Services.msc

 (3) Select ASP.NET State Service

 (4) Right Click and Start it.

2

Otra cosa que debe verificar es si tiene el Firewall de Windows habilitado, ya que podría estar bloqueando el puerto 42424.


2

Descubrí que algunos desarrolladores, por alguna razón, definirán la IP privada del servidor fuera de IIS en una ubicación inesperada, como un archivo de configuración no estándar (es decir, no web.config) o un archivo de texto. Esto puede hacer que la operación interna falle incluso cuando se inicia el servicio, los puertos no están bloqueados, las claves de registro son correctas, etc.

Kaseya, en particular, coloca un archivo llamado serveripinternal.txt en el directorio raíz de IIS del servidor VSA. He visto el texto de su error cuando alguien que ejecuta su propia instancia de Kaseya cambió la IP interna del servidor. Se podrá acceder al servidor, IIS responderá y aparecerá la página de inicio de sesión, pero el inicio de sesión fallará con el mensaje citado.



0

Recientemente me encontré con este problema y ninguna de las soluciones propuestas lo solucionó. El problema resultó ser un uso excesivo de los conjuntos de datos almacenados en la sesión. Hubo una falla en el código que dio como resultado que el tamaño de la sesión aumentara 10 veces.

Hay un artículo en el blog de msdn que también habla de esto. http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

Usé una función para escribir mensajes de seguimiento personalizados para medir el tamaño de los datos de la sesión en el sitio en vivo.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.