Foros del Web » Programando para Internet » PHP »

vida de una sesion

Estas en el tema de vida de una sesion en el foro de PHP en Foros del Web. Hola amigos, tengo en el php.ini la variable session.gc_maxlifetime, que es la que mide la vida (o duracion) de una sesion,no? -> variable en el ...
  #1 (permalink)  
Antiguo 04/06/2004, 02:32
Avatar de puchitol  
Fecha de Ingreso: diciembre-2003
Ubicación: ELCHE
Mensajes: 322
Antigüedad: 20 años, 4 meses
Puntos: 0
vida de una sesion

Hola amigos,
tengo en el php.ini la variable
session.gc_maxlifetime, que es la que mide la vida (o duracion) de una sesion,no?

-> variable en el php.ini
session.gc_maxlifetime 1440 1440

pero, en que unidades estan expresados esos valores (1440)?, en segundos?
cual seria un valor apropiado para esa variable?

un saludo
__________________
If you think fuck is funny, fuck yourself and save your money,
espero que entendais la moraleja... je, je, je
  #2 (permalink)  
Antiguo 04/06/2004, 07:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En segundos se expresa esa unidad (lo puedes ver en www.php.net/session)

Si propagas el SID en cookies (session.use_cookies ) .. el tiempo de expiración de esa cookie creada (lo define otra directiva del tema) también interviene en la "duración" de una sesión .. mejor dicho no de la duración "físca" de esa sesión .. pero en cierta manera se comporta así pues .. si ese tiempo de expiración está configurado a "0" (segundos .. es lo que está por defecto), el SID para ese cliente expira (desaparece) si cierra todas las ventanas abiertas de tu sitio (cookies de "sesión" le llaman a ese tipo de cookeis). Por ende .. el SID lo "perdió" el cliente ya y la sesión no será usada más por ese cliente (que la creó para si mismo y es única), pero .. si por otro médio recuperas ese SID y se lo pasas a tus scripts (depende de session.use_trasn_sid y de session.use_only_cookies si lo usas o no) .. podrías retomar esa sesión activa durante el tiempo que determine session.gc_maxlifetime que .. todavía será válido.

Por ende .. Todo depende de como propages el SID en tu aplicación. Si lo haces por el URL .. ese tiempo session.gc_maxlifetime debería ser lo menor posible, pero OJO .. por qué si le das poco tiempo, es probable que si un usuario está navegando tu sitio y se "entretiene" en cierta página .. al pasar a la siguiente tu sistema le diga que la "sesión expiró".

Yo usaría (y de hecho así lo hago) menos tiempo para session.gc_maxlifetime (10 minutos? o menos? .. depende del contenido de tu web y de como lo usen tus usuarios) .. a su vez propagaría el SID en cookies (session.use_only_cookie .. es decir: forzar a sólo usar cookeis para propagar el SID) y con tiempo de expiración 0

Al usar cookies para propagar el SID ..tendras que avisar a los usuarios de tu aplicación que requiere de navegadores que acepten cookies. El hecho de usar cookies para propagar el SID resuelve algunos problemas de "seguridad" que detalla el própio PHP.ini y php.net en su apartado sesiones.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:55.