Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

No funciona aspnet_state

1,282 views
Skip to first unread message

Jorge

unread,
Feb 16, 2005, 2:50:33 AM2/16/05
to
Estoy intentando configurar mi aplicación asp .net para
que utilice la configuración StateServer para almacenar
las variables de sesión.
He iniciado el servicio aspnet_state.exe pero al intentar
ejecutar la aplicación no se entera, y me da el mensaje:
"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\aspne
t_state\Parameters\AllowRemoteConnection"
La HttpException que me da es 0x8007274c.
He probado a cambiar la configuración del
AllowRemoteConnection y da igual.
Alguien tiene alguna idea? Gracias

Juan T. Llibre

unread,
Feb 16, 2005, 5:13:05 AM2/16/05
to
Configuraste el modo en el web.config ?


<configuration>
<system.web>
<sessionState mode="StateServer"
stateConnectionString="tcpip=127.0.0.1:42424"
cookieless="false"
timeout="20"/>

</system.web>
</configuration>Esa configuración te sirve si el servicio de State Server
estará corriendo en la misma máquina.

Ponla en tu web.config, y reinicia el servicio de StateServer.


Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
=====================

"Jorge" <anon...@discussions.microsoft.com> wrote in message
news:04a201c513fc$31ab3f80$a401...@phx.gbl...

Jorge

unread,
Feb 16, 2005, 5:53:25 AM2/16/05
to
Sí, toda la "configuración teórica" es correcta

>-----Mensaje original-----

>.
>

Juan T. Llibre

unread,
Feb 16, 2005, 6:00:19 AM2/16/05
to
¿ A que te refieres con "configuración teórica", Jorge ?

Yo he usado esa configuración múltiples veces,
y *siempre* ha funcionado.

¿ Es que no te funciona después de hacer los cambios ?

Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
=====================

"Jorge" <anon...@discussions.microsoft.com> wrote in message

news:200b01c51415$bda9fcb0$a501...@phx.gbl...

Jorge

unread,
Feb 16, 2005, 6:51:39 AM2/16/05
to
Pues me refiero sencillamente al código del web config
que tú has escrito antes y a comprobar que el servicio
está corriendo y además en el puerto correcto.
No sé si tendrá algo que ver con inciciar el servicio en
la cuenta local del sistema o hay que usar otra cuenta.
Otra cosa no se me ocurre la verdad.
Gracias

>-----Mensaje original-----

>.
>

Juan T. Llibre

unread,
Feb 16, 2005, 7:40:37 AM2/16/05
to
¿ Cual sistema operativo usas ?
¿ Cual versión de ASP.NET usas ?

Otra cosa : mencionaste que cambiaste el Registry
para permitir conexión remota del servicio State Server
a otra máquina :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection


¿ Volviste a ponerlo como estaba ?

¿ Puedes postear el código del web.config que estas usando ?
( Para ver si hay un "typo"... )

Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
=====================

"Jorge" <anon...@discussions.microsoft.com> wrote in message

news:204201c5141d$dff4d9e0$a501...@phx.gbl...

Jorge

unread,
Feb 16, 2005, 11:44:41 AM2/16/05
to
Pues he probado en dos máquinas distintas y de muchas
formas de configuración.
Una de ellas es Windows 2003 Server y otra Windows XP
Professional.
En ambos casos usamos ASP .NET 1.1 y la aplicación está
en c# con Visual Studio 2003.
Mi clave de AllowRemoteConnection ahora mismo está a 1,
pero ya te digo que he probado todas las configuraciones
que se me han ocurrido.
He intentado incluso acceder a otra máquina (cambiando la
ip en el web.config) para recuperar las variables de
sesión y siempre obtengo el mismo error.
Te adjunto mi web.config:


<?xml version="1.0" encoding="utf-8" ?>
<configuration>

<system.web>

<!-- DEPURACIÓN DINÁMICA DE COMPILACIÓN
Establezca la depuración de compilación
como "true" para habilitar la depuración ASPX. Si no,
establezca este valor en "false"
para mejorar el rendimiento en tiempo de
ejecución de la aplicación.
Establezca la depuración de compilación
como "true" para insertar símbolos de depuración
(información .pdb)
en la página compilada. Dado que este proceso
crea un archivo grande que se ejecuta
más despacio, debe establecer este valor
en "true" durante la depuración y en
"false" el resto del tiempo. Para obtener más
información, vea la documentación acerca de
la depuración de archivos ASP.NET.
-->
<compilation
defaultLanguage="c#"
debug="true"
/>

<!-- MENSAJES DE ERROR PERSONALIZADOS
Establezca el modo customErrors como "On"
o "RemoteOnly" para habilitar los mensajes de error
personalizados y como "Off" para deshabilitarlos.
Agregue etiquetas <error> para cada error que
desee controlar.

"On" Mostrar siempre mensajes personalizados
(descriptivos).
"Off" Mostrar siempre información de error
detallada de ASP.NET.
"RemoteOnly" Mostrar mensajes personalizados
(descriptivos) sólo a usuarios que no se estén ejecutando
en el servidor Web local. Se recomienda esta
configuración por motivos de seguridad, para que
no se muestre información detallada de la
aplicación a clientes remotos.
-->
<customErrors
mode = "Off"
/>

<!-- AUTENTICACIÓN
Esta sección establece las directivas de
autenticación de la aplicación. Los modos existentes
son "Windows",
"Forms", "Passport" y "None"

"None" No se realiza ninguna autenticación.
"Windows" IIS realiza la autenticación (básica,
implícita o Windows integrada) de acuerdo con
la configuración de la aplicación. Se debe
deshabilitar el acceso anónimo en IIS.
"Forms" El usuario proporciona un formulario
personalizado (página Web) para introducir las
credenciales y, a continuación,
autenticarlas en la aplicación. Un símbolo
(token) de credencial de usuario se almacena en una
cookie.
"Passport" La autenticación se realiza mediante
un servicio de autenticación centralizado proporcionado
por Microsoft que ofrece un inicio de sesión
único y servicios de perfil principal para sitios miembro.
-->
<authentication mode="Windows" />

<!-- AUTORIZACIÓN
Esta sección establece las directivas de
autorización de la aplicación. Puede permitir o denegar
el acceso
a los recursos de la aplicación por usuario o
función. Comodines: "*" incluye a todo el mundo, "?"
incluye a usuarios anónimos
(sin autenticar).
-->

<authorization>
<allow users="*" /> <!-- Permitir a todos los
usuarios -->
<!-- <allow users="[lista de usuarios
separados por comas]"
roles="[lista de funciones
separadas por comas]"/>
<deny users="[lista de usuarios
separados por comas]"
roles="[ lista de funciones
separadas por comas]"/>
-->
</authorization>

<!-- REGISTRO DE SEGUIMIENTO EN EL NIVEL DE
APLICACIÓN
El seguimiento en el nivel de aplicación
habilita los resultados del registro de seguimiento para
todas las páginas de una aplicación. Establezca
el seguimiento como "true" para habilitar el
registro de seguimiento de la aplicación. Si
pageOutput="true", la información de seguimiento
se mostrará en la parte inferior de cada
página. Si no, puede ver el registro de seguimiento de
aplicación en la página "trace.axd" desde la
raíz de la aplicación Web.
-->
<trace
enabled="false"
requestLimit="20"
pageOutput="true"
traceMode="SortByTime"
localOnly="false"
/>

<!-- CONFIGURACIÓN DE ESTADO DE SESIÓN
De forma predeterminada ASP.NET utiliza cookies
para identificar qué solicitudes pertenecen a una sesión
determinada.
Si las cookies no están disponibles, puede
realizar el seguimiento de una sesión agregando un
identificador de sesión a la dirección URL.
Para deshabilitar las cookies, establezca
sessionState cookieless="true".
-->


<sessionState
mode="StateServer"
stateConnectionString="tcpip=127.0.0.1:42424"
cookieless="false"

timeout="30"
/>

<!-- GLOBALIZACIÓN
Esta sección establece la configuración de
globalización de la aplicación.
-->
<globalization
requestEncoding="utf-8"
responseEncoding="utf-8"
/>

</system.web>

</configuration>

>-----Mensaje original-----

>.
>

Juan T. Llibre

unread,
Feb 16, 2005, 12:06:03 PM2/16/05
to
La cuenta con que estas corriendo el StateServer
es ( en W2K3 ) la cuenta Network Service ?
( NT AUTHORITY\Servicio de red , en español )

re:


>Mi clave de AllowRemoteConnection
> ahora mismo está a 1

Por favor, pon la clave
AllowRemoteConnection a 0.

Y... asegúrate de que la clave de "Port" tenga el mismo
puerto que tienes en web.config ( 42424 ).

Luego de hacer eso, reinicia IIS ( iisreset )
y cuando haya reiniciado, ve a Services
y verifica que el servicio State Server esté corriendo.

Si te dá error todavía, postea el mensaje de error.

Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
=====================

"Jorge" <anon...@discussions.microsoft.com> wrote in message

news:07bd01c51446$cff8c320$a401...@phx.gbl...

Jorge

unread,
Feb 17, 2005, 2:56:09 AM2/17/05
to
He configurado todo en W2K3 como dijiste y el error sigue
siendo el mismo:
"No se puede hacer 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\aspne
t_state\Parameters\AllowRemoteConnection para asegurarse
de que acepta más solicitudes. "
La pila de la excepción es:
"[HttpException (0x8007274c): No se puede hacer 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\aspne
t_state\Parameters\AllowRemoteConnection para asegurarse
de que acepta más solicitudes.]

System.Web.SessionState.OutOfProcStateClientManager.MakeRe
quest(StateProtocolVerb verb, String id,
StateProtocolExclusive exclusiveAccess, Int32 timeout,
Int32 lockCookie, Byte[] buf, Int32 cb, Int32
networkTimeout, SessionNDMakeRequestResults& results) +512

System.Web.SessionState.OutOfProcStateClientManager.SetAsy
ncWorker(String id, SessionStateItem item, Byte[] buf,
Int32 length, Boolean inStorage) +57

System.Web.SessionState.OutOfProcStateClientManager.System
.Web.SessionState.IStateClientManager.Set(String id,
SessionStateItem item, Boolean inStorage) +142

System.Web.SessionState.SessionStateModule.OnReleaseState
(Object source, EventArgs eventArgs) +465

System.Web.SyncEventExecutionStep.System.Web.HttpApplicati
on+IExecutionStep.Execute() +60
System.Web.HttpApplication.ExecuteStep(IExecutionStep
step, Boolean& completedSynchronously) +87"

Crees que serviría de algo eliminar la contraseña de esta
cuenta ( NT AUTHORITY\NetworkService )? Como ya te dije
tb probé en el XP con la cuenta local y nada.
Parece mentira, con lo sencillo que parecía esto y lo que
se está complicando...
Bueno, espero que esto sirva de ayuda.
Gracias

>-----Mensaje original-----

>.
>

0 new messages