nimble: Session Timeout

Hi

Seit einiger zeit arbeite ich mit php Sessions. Nach der Authentifizierung erstelle ich ein "user"-Objekt, welches in der session landet, ist das Objekt nicht da, muss sich der Benutzer authentifizieren.

Das genze sieht vereinfacht so aus:

  
session_start();  
if(isset($_SESSION["user"]))  
{  
	$user = $_SESSION["user"];  
}  
else  
{  
	echo 'loginpage';  
}  

Ein Java-Script ruft nach erfolgreichem login regelmässig Statusmeldungen ab, session_start() wird dabei bei jeder Kommunikation mit dem Server ausgeführt, somit sollte meiner Meinung nach die Session immer wieder erneuert werden.

nach ca. 8-10 min bricht das automatische nachladen ab, die session ist weg und der user muss sich wieder neu anmelden.

Ich bin bei einem Hosting-Anbieter und kann an der php.ini nichts ändern, zur info hier aber der relevante abschnitt:

  
Session Support	enabled  
Registered save handlers	files user sqlite  
Registered serializer handlers	php php_binary wddx  
  
Directive	Local Value	Master Value  
session.auto_start	Off	Off  
session.bug_compat_42	On	On  
session.bug_compat_warn	On	On  
session.cache_expire	180	180  
session.cache_limiter	nocache	nocache  
session.cookie_domain	no value	no value  
session.cookie_httponly	Off	Off  
session.cookie_lifetime	0	0  
session.cookie_path	/	/  
session.cookie_secure	Off	Off  
session.entropy_file	no value	no value  
session.entropy_length	0	0  
session.gc_divisor	100	100  
session.gc_maxlifetime	1440	1440  
session.gc_probability	1	1  
session.hash_bits_per_character	4	4  
session.hash_function	0	0  
session.name	PHPSESSID	PHPSESSID  
session.referer_check	no value	no value  
session.save_handler	files	files  
session.save_path	/tmp	/tmp  
session.serialize_handler	php	php  
session.use_cookies	On	On  
session.use_only_cookies	Off	Off  
session.use_trans_sid	0	0  

Auch die Funktion session_set_cookie_params(900); welche ich vor session_start(); aufrufe bringt keine Besserung.

Kann mir jemand weiterhelfen?
vielen Dank im voraus!

THX
------------------------------
A programmer is just a tool which converts coffeine into code.
------------------------------

  1. Hi!

    Ich bin bei einem Hosting-Anbieter und kann an der php.ini nichts ändern, zur info hier aber der relevante abschnitt:

    Alle Session-Parameter können auch im Script vor dem session_start() geändert werden.

    nach ca. 8-10 min bricht das automatische nachladen ab, die session ist weg und der user muss sich wieder neu anmelden.

    Es kann sein, dass andere Mithostlinge durch schärfere Garbage-Collection-Einstellungen auch deine Sessions aus dem

    session.save_path /tmp /tmp

    wegräumen. Du solltest dir ein eigenes Verzeichnis für deine Sessiondaten anlegen, das aber unbedingt außerhalb des DocumentRoot oder wenigstens zugriffsgeschützt.

    Lo!

  2. Hello,

    Ein Java-Script ruft nach erfolgreichem login regelmässig Statusmeldungen ab, session_start() wird dabei bei jeder Kommunikation mit dem Server ausgeführt, somit sollte meiner Meinung nach die Session immer wieder erneuert werden.

    Dann sende doch testhalbner auch die Session-ID vor und nach Session_start() mit und lass Dir vom JavaScript anzeigen.

    Was kannst Du da sehen?

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de