Seite 1 von 1

Timeout bei Login mit Session

Verfasst: 16.07.2010, 11:43
von _player
Hallo,

ich habe einen Mitgliederbereich mit Sessions erstellt. Funktioniert auch alles Prima. Nur ist es so das wenn man eine halbe Stunde nichts macht und dann weiter surft auf der Seite ein Timeout kommt.

Kann man das irgendwie umgehen? Also die Session länger machen, das man immer (oder länger) eingeloggt bleibt?

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 16.07.2010, 11:48
von Synonym

Verfasst: 27.07.2010, 14:40
von _player
Also ich bekomme es absolut nicht hin. Ich werde immer nach den 24 Minuten ausgeloggt. session.gc_maxlifetime ist auf 1440 Sekunden sprich 24 Minuten eingestellt. An die php.ini komme ich nicht ran.

Folgenden Code habe ich im Script damit ich vier Stunden erreiche:

Code: Alles auswählen

ini_set("session.gc_maxlifetime", 14400);
Auch wenn ich mir mit ini_get('session.gc_maxlifetime'); den Wert später ausgeben lasse ist er offenbar geändert.

Dennoch werde ich nach den 24 Minuten raus geschmissen??

Hat jemand noch Erfahrung mit der Verlängerung der Session??

Verfasst: 27.07.2010, 15:05
von Synonym
Sollte aber normalerweise funktionieren.

Kann es sein, dass Du irgendwo ein Script in dem Bereich includest, das auf die Session zugreift, aber eben kein "maxlifetime" gesetzt ist? Das muss nämlich bei jedem Scriptaufruf gesetzt werden, wenn es ein session_start() gibt. Fehlt das irgendwo, dann greift an der Stelle wieder der Standardwert von 1440.

Anderer Ansatz. Welche Laufzeit hat denn das Cookie? Ist das der Standardwert von "0" oder gar auch 1440. Wenn da eine Zeit vorgegeben ist, die kürzer ist als Dein maxlifetime (außer 0), dann widerspricht sich das natürlich auch.

Verfasst: 28.07.2010, 08:55
von _player
Synonym hat geschrieben:Sollte aber normalerweise funktionieren.

Kann es sein, dass Du irgendwo ein Script in dem Bereich includest, das auf die Session zugreift, aber eben kein "maxlifetime" gesetzt ist? Das muss nämlich bei jedem Scriptaufruf gesetzt werden, wenn es ein session_start() gibt. Fehlt das irgendwo, dann greift an der Stelle wieder der Standardwert von 1440.
Also ich habe eine index.php wo maxlifetime gleich am Anfang gesetzt ist, genau vor dem session_start().
Diese index.php wird bei jedem Scriptaufruf geladen und es wird folgendes abgefragt

Code: Alles auswählen

 
if(!isset($_SESSION['benutzer'])) {
 es folgt das Login-Formular, Passwortabfrage etc.
}else{
  include('mitgliederbereich.php');
 }
Es wird also kein weiteres session_start() aufgerufen, nur eben in der index.php!
Synonym hat geschrieben: Anderer Ansatz. Welche Laufzeit hat denn das Cookie? Ist das der Standardwert von "0" oder gar auch 1440. Wenn da eine Zeit vorgegeben ist, die kürzer ist als Dein maxlifetime (außer 0), dann widerspricht sich das natürlich auch.
Das session.cookie_lifetime ist 0, das ist dann okay, oder?