dedlfix: gc_maxlifetime abhängig von Inaktivität

Beitrag lesen

Hi!

kann mir vielleicht wer sagen, ob der Wert von gc_maxlifetime sich auf die absolute Zeit oder auf die Zeit einer "Inaktivitäts-Phase" bezieht?

Da PHP keine Inaktivität feststellen kann, kann es nur das Dateisystem befragen. Und da wird die Modification Time als Indikator verwendet, so sagt es das PHP-Handbuch zu session.gc_maxlifetime.

Also - Wenn 3600 Sek. eingestellt sind - Ist die Session in jedem Fall nach einer halben Stunde dem GC zum Abschuss freigegeben oder erst nach einer halben Stunde Inaktivität?

Frühestens 3600 Sekunden nach dem mtime-Wert, das aber nur, wenn alle Scripte, die auf das gleiche Session-Verzeichnis zugreifen, gleich eingestellt sind. Da sie das nicht müssen, kann es durchaus passieren, dass ein Script mit kürzeren Werten die Sessiondateien der anderen löscht. Abhilfe wäre, jeder Anwendung ihr eigenes Session-Verzeichnis zu konfigurieren.

Lo!