Probleme mit Sessionverwaltung: Warning: session_start() ...
datenbankler
- php
0 Erik
Hallo ich habe sporadisch Probleme auf einem Server von All-Inkl.
Einige meiner Nutzer klagen über Loginprobleme aufgrund von Sessionproblemen.
Sie erhalten folgende Fehlermeldungen:
--------------
Warning: session_start() [function.session-start]:
open(/tmp/sess_4d6bb20944a4ab4448fb71abee2de25f, O_RDWR) failed: Permission denied (13) in /www/htdocs/.../config.php on line 2
--------------
Nach dem Löschen des Browsercaches funktioniert es oft wieder, die Thematik tritt sporadisch seit einigen Tagen auf.
Zitat All-Inkl Support:
"solche Sessionprobleme treten nur bei Umstellung von PHP als Modul in PHP als CGI auf"
Ich habe nämlich vor einigen Monaten auf php5 in der htaccess umgestellt, bis vor wenigen Tagen gab es keine Probleme und seither wurde an der htaccess nichts verändert.
Zu 98% Funktioniert die Sache ja, aber auf einzelne Nutzter haben ernstzunehmende Schwierigkeiten, selbst nach löschen des Caches.
Kann mir einer erklären was da für einen Mechanismus dahintersteckt. Das irgendwie diese Sessiondatei nicht mehr vorhanden ist oder nicht lesbar ist, ist mir klar. Kann das vielleicht eine Wechselwirkung mit Sessioncookies sein? Ich habe nämlich immer eine Sessionid in der Adresszeile übergeben, mit dem Sessioncookie ist die ganze Sache ja redundant.
Ungefähr Zeitgleich mit den Anfängen der Probleme habe ich einen Flash-Bildupload installiert (http://swfupload.org).
Unter anderem ist da dies Schnipsel der mir Spanisch vorkommt:
~~~php
// Get the session Id passed from SWFUpload. We have to do this to work-around the Flash Player Cookie Bug
if (isset($_POST["PHPSESSID"])) {
session_id($_POST["PHPSESSID"]);
}
So langsam bin ich mit meinem Latein am Ende, ich bin über jeden Tipp dankbar!
Vielen Dank im vorraus.
Setzte ein eigenes (schreibbares) Verzeichnis mit session_save_path(), vielleicht hilft das.