asp.net - No se puede realizar la solicitud de estado de la sesión al servidor de estado de la sesión
session-state stateserver (8)
Nuestro sitio tiene actualmente este problema. Básicamente solo ocurre cuando hacemos clic en algunos enlaces particulares 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 el servicio de estado ASP.NET se haya iniciado y 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 al verificar 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 antes mencionado no existe o está establecido en 0, la cadena de conexión del servidor de estado debe usar ''localhost'' o ''127.0.0.1'' como el nombre del servidor.
sitio de destino :
Void MakeRequest (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" />
Compruebo el servicio de estado ASP.NET, y actualmente está iniciado y configurado en automático
Establecí el registro indicado en el mensaje de error en 1, pero aún no funciona.
- Inicio-> Herramientas administrativas -> Servicios
- Haga clic derecho en el Servicio de estado de ASP.NET y haga clic en "iniciar"
Además, puede establecer el servicio en automático para que funcione después de un reinicio
He descubierto que algunos desarrolladores definirán, por alguna razó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 provocar que la operación interna falle incluso cuando se inicia el servicio, los puertos no se bloquean, las claves de registro son correctas, etc.
Kaseya, en particular, coloca un archivo llamado serveripinternal.txt en el directorio raíz IIS del servidor VSA. He visto el texto de tu error cuando alguien que ejecutaba su propia instancia de Kaseya cambió la IP interna del servidor. El servidor será accesible, IIS responderá y aparecerá la página de inicio de sesión, pero el inicio de sesión fallará con el mensaje citado.
Mira esto:
stateConnectionString="tcpip=server:port"
es correcto. También compruebe que el puerto predeterminado ( 42424
) esté disponible y que su sistema no tenga un firewall
que bloquee el puerto en su sistema
Otra cosa que debes comprobar es si tienes Windows Firewall habilitado, ya que eso podría estar bloqueando el puerto 42424.
Recientemente me encontré con este problema y ninguna de las soluciones propuestas lo solucionó. El problema resultó ser un uso excesivo de datasets almacenados en la sesión. Hubo un error en el código que hace que el tamaño de la sesión aumente 10 veces.
Hay un artículo en el blog msdn que también habla sobre 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.
Si necesita cambiar HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services / aspnet_state / Parameters / AllowRemoteConnection a 1, recuerde reiniciar el servicio de estado ASP.net después de cambiar el parámetro.
Tuve el mismo problema cuando se dañó alguna instalación de ASP.NET. En ese caso, sugieren ejecutar aspnet_regiis -i -enable