Tom: session.use_trans_sid verhindert Zerstören der Session

Beitrag lesen

Hallo,

aber da ich mit $_SESSION=array(); und session_unset(); die daten vernichte, müsste trotzdem die session als beendet angesehen werden.

aber vor allem, warum beeinflußt session.use_trans_sid die arbeitsweise des garbage collectors? das macht doch keinen sinn...

Ich bin der Meinung, dass ein session _destroy() sofort die zugehörige Sessiondatei (und die Sessionvariablen und die Sessionnummer) löscht. Der Garbage Collector läuft davon völlig unabhängig und prüft lediglich das LastTouch-Datum der Dateien.

Darum muss er im Session-Verzeichnis auch browsen können (also Leserecht für Verzeichnis). Wenn man das wegnimmt, dann tut der gar nix mehr.

Mit session_unset() werden nur die Sessionvariablen des Scriptes gelöscht, nicht aber die Sessionnummer, denn die steht ja in $_SERVER[$sessionname], wobei $sessionname den Standardnamen PHP_SESSID hat.

Grüße

Tom