php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.04.2007, 08:45  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard cookies/sessions und ihre Lebenszeit

Hi,

ich hab momentan ein Problem damit, die Lebenszeit von Cookies die gesetzt werden einzustellen.

Konkret ist es so, dass es mit einem Mozilla Firefox so funktioniert wie ich das möchte.
Lediglich bei Nutzern, die den MS IE benutzen funktioniert das nicht.

Ich benutze den Cookie um den Benutzer zu identifizieren, nachdem er sich duch einen Login angemeldet hat.
Nun ist es bei einem MSIE Nutzer so, dass er sich sehr schnell wieder neu anmelden muss. Auch während er das System benutzt.
Gedacht hatte ich mir eigentlich, dass eine Anmeldung so lange gültig ist wie ein Browswerfenster geöffnet ist.

Könnt ihr mir sagen wo ich Einstellungen tätigen muss?
In der HTTP.conf, aber noch irgendwo?
Und was muss ich da einstellen.

Danke für eure Mühe!
Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 16.04.2007, 08:57  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Akzeptiert derjenige Cookies? Löscht der vllt die Cookies zwischenzeitlich?

Zitat:
Könnt ihr mir sagen wo ich Einstellungen tätigen muss?
In der HTTP.conf, aber noch irgendwo?
Und was muss ich da einstellen.
Wenn das Problem nur bei einzelnen Browser oder Browsertypen auftritt, wirst du da Server-seitig nichts machen können. Anscheinend liegt es an den Einstellungen des Browser.
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 16.04.2007, 09:13  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard

Kannst du mir die generellen Einstellungen sagen, die ich machen muss um zu gewährleisten, dass der Cookie und die session so lange aktiv sind wie das brwoserfenster offen ist?
Vielleicht hab ich ja irgendwas vergessen.
Oder kannst du mir eine Quelle sagen, aus der ich die entsprechenden Informationen entnehmen kann.

Auf die Aussagen der betroffenen Personen verlasse ich mich nicht so gerne...
Ich möchte nur sicherstellen, dass die einstelleungenh richtig sind. Wenn das Problem dann immer noch auftritt, kann ich sie darauf verweisen, dass es an ihren einstellungen liegt

Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
Alt 17.04.2007, 09:38  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard

Guten Morgen,

weiß denn niemand Rat?



Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
Alt 17.04.2007, 09:47  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

Ist dieser Effekt reproduzierbar ?

Lass dir die Browserdaten des Users geben der das meldet ...

http://de3.php.net/manual/de/ref.session.php

hier sind die Einstellungen angegeben die du Serverseitig machen kannst.
M3g4Star ist offline  
Alt 17.04.2007, 10:18  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard

Moin,

nun dieser Effekt tritt immer wieder auf.
Man muss glaub ich nur eine weile warten und dann ist bei der nächsten Benutzer-Aktion die Session nicht mehr gültig.
Was meinst du mit Browser-daten?

edit:
also phpinfo sagt: cookie_lifetime = 0
müsste also stimmen.

die lebensdauer vom cookie hängt auch nur von php ab oder? oder auch vom apachen?


Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
Alt 17.04.2007, 10:41  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Auf was stehtn denn gc_maxlifetime?
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 17.04.2007, 10:47  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard

1440

hmm an der stelle bin ich auch gerade angekommen.
das könnte es ja sein oder?

edit: ich habs mal hochgestellt auf 28800... das sollte für 8h reichen.

mal gucken ob sich noch jemand beschwert

Danke für eure Hilfe!
Wenn noch jemand Vorschläge oder Anmerkungen hat, immer her damit!

Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
Alt 17.04.2007, 11:13  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Lies dir doch den betroffenen Text durch! Der gc sammelt bei Aufruf (geschieht automatisch) alle (Session-)Dateien ein, die älter sind als 1440Sek = 24min (wer kommt auf so ein Wert? ) und löscht sie. Das bedeutet aber auch, dass Sessions gelöscht werden (ob Cookie oder nicht), wenn ein Nutzer 30min lang an einem Text schreibt, aber sonst nichts auf der Seite macht. Der Collector sammelt also keine Datei ein, die folgende Bedingungen erfüllt:
1. Der Nutzer der betroffenen Session hat in den letzten 1440sek ein Request abgesetzt (die Seite offen zu haben zählt nicht )
2. Die Session wird im Script gestartet (erst dadurch wird die betroffene Session-Datei auf die aktuelle Zeit gesetzt)
3. Es handelt sich um die richtige Session (es lässt sich schließlich auch mit Angabe einer eigenen SID eine andere/neue Session ansprechen)
4. Der gc wird ausgeführt (Dies geschieht nicht nach einer exakten Zeit sondern mit einer bestimmten Wahrscheinlichkeit (gc_probability/gc_divisor) pro Request)

Wenn man also nun 30min lang irgendwas tippt, oder liest, läuft die Session auch ab. Die gc_maxlifetime würd ich allerdings nicht höher setzen, da 20min eigentlich vollkommen ausreichen sollten, eine Erhöhung das Problem nur verschiebt aber nicht löst und eine Erhöhung eben auch die Anzahl der Session-Dateien erhöht und letzten Endes die Gesamtperformance schaden kann. Im Endeffekt ist "das Ablaufen einer Session" eigentlich genau das gewünschte Verhalten und sollte net weiter in Frage gestellt werden
Sinnvoller wäre es zB ein zweites Cookie zu setzen, dass im Falle eine neue Session startet mit den alten Daten (siehe "eingeloggt bleiben"-feature von so ziemlich sämtlichen Foren-Systemen) oder ein Javascript, welches im Hintergrund regelmässig eine Datei auffn Server aufruft, die nichts anderes tut als die Session am Leben zu erhalten. Funktioniert aber nur, wenn JS auch im Browser aktiviert ist


So, noch Fragen?
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 17.04.2007, 11:33  
Erfahrener Benutzer
 
Registriert seit: 14.09.2004
Beiträge: 382
Crypi
Standard

ok, danke für deine ausführliche antwort!
ich glaube ich hab ees jetzt verstanden.
ich werde das erstmal so lassen und mich nach einer lösung für das "eingeloggt bleiben" umsehen.

danke!

Crypi
__________________
PostgreSQL Forum:
www.pg-forum.de
Crypi ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
cookie lebenszeit, http://www.php.de/php-tipps-2007/43909-cookies-sessions-und-ihre-lebenszeit.html, lebenszeit von cookies, lebenszeit cookies, cookies lebenszeit, lebenszeit cookie, cookie zeit einstellen, php session lebensdauer, php cookie zeit, warten bis session gesetzt session php, cookie lebenszeit session, session zeit einstellen php, cookie lebenszeit einstellen, cookie zeit ändern, session php zeit einstellen, php sessions immer wieder neu anmelden, lebenszeiten cookies, session cookie zeit php, php session cookie zeit, lebenszeit eines cookies

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:47 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.