[cpo+] : Modifikationen

« zurück

Session Garbage Collection

Kategorie:Improvement
Beschreibung:Ich musste feststellen, dass in meinen Installationen unter PHP 7.2 und 7.3 die Session Garbage Collection nicht funktioniert, weil session.gc_probability auf 0 steht und sich auch nicht mittels ini_set('session.gc_probability', 1) aktivieren lässt.
Warum das so ist konnte ich nicht rauskriegen, laut PHP-Doku sollte das per ini_set funktionieren, tut es aber nicht.
Damit ist die in sessiondb.inc.php gewählte Aktivierung per ini_set wirkungslos und die anschließende Nutzung des vermeintlich gesetzten Wertes erfolglos.

Daher habe ich das jetzt mal geändert.
Erstellt von:Markus Rösel
Geprüft von:
Veröffentlicht von:
CPO+ Version:
Kurze Erläuterung der Codeanpassung:in _include/sessiondb.inc.php

Code vorher:

function sessionDB_open($save_path, $session_name) { // Workaround for Debian systems with disabled GC if (ini_get('session.gc_probability')==0) @ini_set('session.gc_probability', 1); if (rand(1, ini_get('session.gc_divisor'))<=ini_get('session.gc_probability')) sessionDB_gc(ini_get('session.gc_maxlifetime')); return true; }

Code nachher:

function sessionDB_open($save_path, $session_name) { // Workaround for Debian systems with disabled GC if (ini_get('session.gc_probability')==0 && rand(1, ini_get('session.gc_divisor'))<=1) sessionDB_gc(ini_get('session.gc_maxlifetime')); return true; }
« zurück