Foros del Web » Programando para Internet » PHP »

¿Cuánto tiempo dura la variable $_Session? ¿se puede ampliar?

Estas en el tema de ¿Cuánto tiempo dura la variable $_Session? ¿se puede ampliar? en el foro de PHP en Foros del Web. Tengo el problema de que la variable $_Session en ocasiones según para que actividades, su tiempo de duración es escaso, de aquí que me surjan ...
  #1 (permalink)  
Antiguo 04/10/2006, 11:15
 
Fecha de Ingreso: agosto-2004
Mensajes: 182
Antigüedad: 19 años, 7 meses
Puntos: 1
Pregunta ¿Cuánto tiempo dura la variable $_Session? ¿se puede ampliar?

Tengo el problema de que la variable $_Session en ocasiones según para que actividades, su tiempo de duración es escaso, de aquí que me surjan 2 preguntas:

1.- ¿Cual es el tiempo de duración de dichas variables de sesión?, en caso de depender de algo también me gustaría conocerlo.

2.- ¿Se puede ampliar este tiempo de duración de la sesión?, en caso afirmativo me gustaría conocer la forma y también si lo he de colocar dicho código en toda página donde utilice la variable de sesión, o simplemente es una vez como se hace con el Session Start.

Muchas gracias de antemano por las respuestas.
  #2 (permalink)  
Antiguo 04/10/2006, 11:25
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Todas las respuestas las tienes en:

www.php.net/session

Lo digo por qué es la documentación oficial de PHP sobre sesiones.

1) La vida de una sesión depende directamente de configuración PHP:
session.gc_maxtimelife

Y a su vez de como propagas el SID: url o cookies. Si lo haces por cookies, el tiempo de vida de esta cookie (configurada en php.ini también) influye.

2) En principio el soporte de sesiones de PHP es bien simple en este aspecto, no maneja tiempos individuales por sesión .. pero puedes "forzar" la configuración de PHP al respecto como toda directiva de PHP que se preste usando la función:

ini_set()
www.php.net/ini_set
(antes de tus session_start() o session_name() que puedas tener).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 05/10/2006 a las 06:36
  #3 (permalink)  
Antiguo 05/10/2006, 01:29
 
Fecha de Ingreso: agosto-2004
Mensajes: 182
Antigüedad: 19 años, 7 meses
Puntos: 1
Gracias por tu contestación. A ver si he entendido bien.

En el php.ini no tengo ahora mismo nada que ponga session.gc_maxlifetime, con lo cual ¿que tiempo por defecto debo de tener por sesión?

Por otro lado, si pongo session.gc_maxlifetime = 1440 en el php.ini se supone que tendré 24 minutos, pero ¿tengo que hacer algo con el SID para que sea así?, siempre contando que no quiero usar cookies.

¿Y el ini_set() también me hará falta?

Gracias de nuevo.
  #4 (permalink)  
Antiguo 05/10/2006, 06:26
 
Fecha de Ingreso: agosto-2004
Mensajes: 182
Antigüedad: 19 años, 7 meses
Puntos: 1
Aparte de lo anterior, si aumento el tiempo de la sesión, ¿que contras tiene esto?, ¿que se sature el servidor o algo así?.
  #5 (permalink)  
Antiguo 05/10/2006, 06:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No sé que "php.ini" estaras viendo .. pero debes tener directivas de sessiones del tipo:

session.xxxxx = yyyyyy

bajo el grupo de funciones del apartado:
[Sessions]

El "SID" es un concepto en sí .. es la "base" de que las sesiones funcionen o hagan su "magia". Dicho dato "SID" se puede propagar de dos formas: URL o cookies. Es recomendable hacerlo en COOKIES! (lo dice php.net no yo), justamente por seguridad!.

Las "cookies" que hablo para propagar el SID las creará PHP si así se lo indicas en php.ini:

session.use_trans_sid = 0
session.use_cookies = 1

Cita:
¿Y el ini_set() también me hará falta?
La función en cuestión se usa para configurar a PHP en "tiempo de ejecución" .. cuando no puedes acceder al PHP.ini o la configuración que ajustas en general sólo te interesa que sea "personalizada" para la ejecución de ese script en concreto.

La configuración de "php.ini" afecta a todo script que se ejecute en el servidor.

Intenta revisar la documentación oficial de lo que te comento (dejé links).



Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 10:19.