Hallo Lukas,
ich habe keine Lust mehr, nach dem Grund zu suchen, warum bei mir sporadisch immer wieder Sessions verloren gehen. Dadurch, dass es eben nur sehr sporadisch auftritt, bindet die Fehlersuche unglaublich viel Zeit und kostet Nerven.
Nicht verzweifeln. Auch solch einen Fehler kann man finden, wenn man genug über das System weiß. Und das Wissen über das System kann man sich schrittweise beschaffen.
Du kannst doch feststellen, wann eine Session neu gestartet wurde. Hierfür kannst Du dann die Umgebungsbedingungen speichern lassen und später auswerten, ob die Session neu gestartet wurde, weil es so vorgesehen war, oder weil die alte verloren gegangen ist.
Frage: Welche Alternative habe ich zum Sessionmanagement? Kann ich es komplett austauschen? Wenn ja, gegen was? Meine bisherige Idee wäre, lediglich eine Session-ID zu generieren und hierzu zugehörig sämtliche (ehemaligen) Sessioninhalte in eine DB zu verfrachten. Ist das viel langsamer als Sessions?
Solange dir nicht klar ist, was da im Sessionmanagement überhaupt passiert, ist ein Austausch der Schicht nicht zu empfehlen. Eine Sessiondatei wird von PHP beim Start geöffnet, gesperrt, gelesen, desesialisiert und als "Array" im Speicher gehalten. Beim Script-Shutdown wird der Speicherinhalt wieder serialisiert und in die Sessiondatei zurückgeschrieben, dann die Sessiondatei wieder freigegeben.
Du könntest auf einem von Dir kontrollierbaren Server z.B. zur Analyse auch iNotify einsetzen, um festzustellen, wann und von wem die Sessiondateien angefasst werden.
Ich hatte auch schonmal an HTML5-local storage gedacht, das ich in anderen Situationen schonmal als sehr hilfreich empfinde. Da scheint mir aber die DB-Lösung sehr viel komfortabler zu sein.
Ist datenschutzrechtlich garantiert ehrlicher. Dann muss aber der gesamte Datenwust immer zwischen Client und Server hin- und her geschickt werden. In Bezug auf die Sicherheit und Stabilität des Programmes ist das negativ zu bewerten. Der User könnte dadurch Daten in die Hand bekommen, die ihn nichts angehen und die Sicherheit gefähren.
Beschreib bitte noch einmal dein System bzw. stelle eine Liste der Links auf die Threads hier im Forum zusammen, die das Problem betreffen. Dann können wir uns nochmal einlesen.
Grüße
TS