
21/07/2003, 19:09
|
O_O | | Fecha de Ingreso: enero-2002 Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 23 años, 2 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. |