[Php-it] Non far scadere mai una sessione

Marcello Vezzelli marcello at vezz.it
Wed May 2 15:38:15 CEST 2007


Emiliano Gabrielli (aka AlberT) ha scritto:
>
>> session.gc_maxlifetime = 604800
>>
>> è una settimana.
>>     
>
> il gc non c'entra con la durata della sessione ...
>   

Supponiamo che  session.cookie_lifetime = 0, quindi il cookie di 
sessione lato client non scade mai.
Già risolto il problema delle sessioni che non scadono mai? No...

Ad ogni richiesta sul server, c'è una probabilità pari a 
session.gc_probability/session.gc_divisor che venga lanciato il garbage 
collector.
Supponiamo 1 probabilità su 100, quindi

session.gc_probability = 1
session.gc_divisor     = 100

Quando viene lanciato il garbage collector, tutti i file di sessione con 
data di creazione antecedente alla data corrente meno 
session.gc_maxlifetime secondi vengono cancellati.

Quindi poco serve avere il cookie valido se il file di sessione non c'è più.
Per questo va alzata la vita dei file per il garbage collector se si 
voglion sessioni "lunghe".

Ciao
Marcello


More information about the Php-it mailing list