Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/07/2003, 19:09
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En la misma documentación de php.net -> sesiones tienen la descripción de las directivas:

session.gc_maxlifetime

session.gc_probability
session.gc_divisor <-- sólo desde PHP 4.3.0 en adelante.

La primera determina cuando pasará un SID (Identificador Unico de sesión) a no ser válido (pasa al modo "garbage" .. osease, no es válido toda referencia a ese SID pero el "file" aun está creado en el sistema de archivos del servidor donde se almacenen las sesiones en caso de usar session.save_handler = files)

Si usamos tiempo "0" (segundos) en esa directiva .. en teoría la sesión "morirá" cuando se cierre el navegador ...

El resto .. " que pase el camión de la basura y borre los archivos" .. .lo determina las otras dos directivas (o 1 sólo dependiendo de la versión de PHP).

Esas directivas indican "cuando" pasará ese "camion de la basura" a borrar esos archivos físicamente del servidor .. Se expresa en porcentaje de veces que se ejecute un inicio de sesiones (cada vez que se haga un session_start() ..) por eso depende mucho de las condiciones reales de uso del sistema basado en sesiones que se use.

Si tienes "pánico" a que esas sesiones permanezcan demasiado tiempo en el sistema de archivos del servidor y no tienes acceso al "php.ini" como para cambiar el estado de esas directivas (ahora no recuerdo si con un ini_set() o .httpacces se pueden "setear" ..) puedes "llevarte" tus sesiones (archivos) a un directorio de tu sitio y borrarlo por tus própios scripts (hasta alguno que ejecutes bajo un CRON de sistema o similar) como si de cualquier archivo se tratase (haciendo un unlink()).

Esta "funcionalidad" la puedes controlar con la función:
session_save_path()

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