2009-09-04 390 views
80

Nuestro sitio está teniendo este problema actualmente. 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

No es posible realizar la solicitud de estado de sesión en el servidor de estado de sesión.
Asegúrese de que el servicio de estado de ASP.NET esté 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 por comprobando 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 anterior no existe o está establecido en 0, la cadena de conexión del servidor debe usar 'localhost' o '127.0.0.1' como nombre del servidor. sitio

objetivo:
Void makeRequest (StateProtocolVerb, System.String, StateProtocolExclusive, Int32, Int32, Int32, byte [], Int32, Int32, SessionNDMakeRequestResults ByRef)

este es el webconfig que contiene sessionstate etiqueta:

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

tengo comprobar el servicio de estado de ASP.NET, y en la actualidad se ha iniciado y configurado en automático

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

Respuesta

7

Compruebe que:

stateConnectionString="tcpip=server:port" 

es correcta. También por favor, compruebe que el puerto por defecto (42424) está disponible y su sistema no tiene un firewall que está bloqueando el puerto en su sistema

+0

Tengo el mismo problema, compré que mi servicio de estado de sesión se está ejecutando correctamente, pero igual recibo el mismo mensaje. Aquí está mi configuración de web.config: lstanczyk

215

1) Inicio-> Herramientas administrativas -> Servicios

2) haga clic derecho sobre 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.

Para más detalles se puede comprobar mi blog: http://jamshidhashimi.com/unable-to-make-the-session-state-request-to-the-session-state-server/

+0

¡A veces he encontrado que solo funciona después de reiniciar el servicio de estado ASP.NET un par de veces! –

+0

Ruta más fácil. copiar y pegar 'services.msc' en el inicio -> Buscar e ir directamente a los servicios –

+1

Trabajar como un encanto para mí – Arun

20

Si necesita cambiar HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection a 1, recuerdan a reinicio la ASP.net Estado servicio después de cambiar el parámetro.

+0

@hikkenmikke Cómo verifica y modifica HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection – Pomster

+0

@Pomster http://pcsupport.about.com/od/termsr/p/registrywindows.htm –

2

Otra cosa a comprobar es si usted tiene habilitado Firewall de Windows, ya que puede estar bloqueando el puerto 42424.

1

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 ocasionar 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 de el 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.

0

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 de esto. http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

Utilicé 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.

1

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 tenemos que iniciar Asp .net Servicio de estado como se muestra en la imagen. enter image description here

Su problema se resolverá.

Cuestiones relacionadas