proyectos ejemplos session iis asp-classic iis-7.5 session-timeout

session - ejemplos - Tiempo de espera clásico de la sesión ASP



django (1)

Estoy desconcertado. Cada uno de nuestros empleados debe iniciar sesión en nuestro servidor que comienza su sesión ASP. Toda la investigación que he realizado muestra que deberíamos poder cambiar el tiempo que dura esta sesión usando session.timeout x donde x es la cantidad de minutos que queremos que dure la sesión, el valor predeterminado es de 20 minutos. Cambié este tiempo de espera sin resultados consistentes.

Finalmente configuré una función que verifica si estoy conectado cada 10 segundos para ver si puedo establecer una longitud de sesión consistente. Hasta ahora, los tiempos han variado de 7 horas a 40 horas en 8 ensayos. He hecho esto tanto en un navegador Chrome y Firefox para ver los diferentes tiempos de sesión y siempre se han agotado el tiempo de espera al mismo tiempo. Sin embargo, los compañeros de trabajo no están agotando el tiempo en estos momentos exactos.

Leí algo sobre global.asa. O no estamos usando esto o ninguno de nosotros lo entiende lo suficientemente bien como para saber dónde está.

También he leído e intentado cambiar las sesiones de tiempo de espera para los grupos de aplicaciones en IIS. Lo estoy haciendo desde Windows 7 y la mayoría de los tutoriales fueron para versiones anteriores de Windows, pero creo que encontré el lugar correcto, pero todavía no pude encontrar que los cambios que estaba haciendo hicieran la diferencia.

tl; dr - ¿Hay alguna manera de encontrar cuánto tiempo queda en una sesión ASP clásica?


Hay varias cosas que pueden afectar la duración del tiempo de espera y varios lugares donde se puede establecer la longitud. IIS tiene su propio valor predeterminado y esto también se puede establecer sitio por sitio. También puede configurarlo en su código de aplicación usando session.timeout como lo ha sugerido.

Si ha creado una función para verificar la existencia de una sesión activa, es probable que la función mantenga viva la sesión cada vez que se active. Es por eso que estás teniendo tiempos de espera de sesión tan largos.

Una sesión finaliza automáticamente si un usuario no ha solicitado o actualizado una página en una aplicación durante un período de tiempo específico.

global.asa es un archivo que puede crear e incluir en la carpeta raíz de su (s) aplicación (es) web. Si quiere o necesita uno, simplemente créelo.

El formato debería ser algo así como;

<script language="vbscript" runat="server"> sub Application_OnStart ''some code end sub sub Application_OnEnd ''some code end sub sub Session_OnStart ''some code end sub sub Session_OnEnd ''some code end sub </script>

Para controlar la duración de su sesión, puede especificar un valor;

Sub Application_OnStart Session.Timeout = 30 ''30 mins End Sub

Una de las soluciones más precisas que he encontrado y que ahora uso sería registrar una marca de tiempo del inicio de sesión inicial y la marca de tiempo de la última actividad para cada usuario específico en una base de datos o una cookie. Luego compare la marca de tiempo actual con los datos almacenados para determinar si la sesión debe finalizar. También puede usar este tipo de método para redirigir automáticamente al cliente a una página de inicio de sesión después de un tiempo de inactividad establecido o mostrar un mensaje de estilo "su sesión ha expirado".