Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] SESSION geht verloren (https://www.delphipraxis.net/100353-%5Bphp%5D-session-geht-verloren.html)

TheMiller 26. Sep 2007 23:16


[PHP] SESSION geht verloren
 
Hallo,

ich habe mal eine Frage. Ich programmiere ein kleines Portal mit einer Login via Sessions. Diese werden ja auf dem Server gespeichert und haben eine spezielle Lebenszeit. Bei mir ist es so, dass alle User, die x Minuten inaktiv sind, ausgeloggt werden.

Jetzt mein Problem:
Ich kann in dem Portal mehr als 2.5 Stunden online sein, aber dann wird meine Session alle paar Minuten (3-5 Minuten) auch direkt auf dem Server gelöscht, obwohl niemand eine Seite öffnet, die die Löschung veranlasst. Die Datei ist einfach auf dem Server weg.

Jetzt kommt das Lustigste... Es betrifft NUR MICH!

Der Unterschied zu allen anderen, die die Seite mit testen - ich habe Vista und IE7 - aber Sessions sind doch Serverseitig!

Bitte gebt mir Denkanstöße!!!

cruiser 26. Sep 2007 23:46

Re: [PHP] SESSION geht verloren
 
Hrm... klingt nach nem Cookie-Problem... Session hin oder her, meist wird ja zumindest ein Cookie mit dem Hash der Session hinterlegt. Wie man da aber abhilfen schaffen kann, keinen Schimmer.. sorry

f.siebler 27. Sep 2007 10:20

Re: [PHP] SESSION geht verloren
 
übertrage die session einfach mit in den urls, schau dir mit phpinfo an welche timeouts es für die session gibt, und aktiviere die session cookies im IE 7 (Sitzungs Cookies gibts da irgendwo in den einstellungen -> google zur Not)....

TheMiller 27. Sep 2007 12:21

Re: [PHP] SESSION geht verloren
 
Hier mal die Infos aus der phpinfo();

Code:
Configure Command

'./configure' '--prefix=/usr' '--datadir=/usr/share/php' '--mandir=/usr/share/man' '--bindir=/usr/bin' '--libdir=/usr/share' '--includedir=/usr/include' '--sysconfdir=/etc' '--with-_lib=lib64' '--with-config-file-path=/etc' '--with-exec-dir=/usr/lib64/php/bin' '--disable-debug' '--enable-inline-optimization' '--enable-memory-limit' '--enable-magic-quotes' '--enable-safe-mode' '--enable-sigchild' '--disable-ctype' [b]'--disable-session' [/b]'--without-mysql' '--disable-cli' '--without-pear' '--with-openssl' '--with-apxs2=/usr/sbin/apxs2-prefork' 'x86_64-suse-linux'

session
Session Support enabled
Registered save handlers files user

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_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.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /var/lib/php /var/lib/php
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid Off Off
Die Sessions funktionieren bei allen Browsern einwandtfrei, außer beim IE7. Die Sessid habe ich in einer DB stehen und habe auf jeder Seite zuerst session_start(), sodass ein Übertragen der ID mit dem Link nicht nötig ist, oder?

Danke

f.siebler 27. Sep 2007 13:45

Re: [PHP] SESSION geht verloren
 
(Sitzungs Cookies gibts da irgendwo in den einstellungen im Internet Explorer -> google zur Not).... :-)
Ansonsten heißt session_start ja nur, dass die seite die session nutzt... das übertragen zur nächsten seite usw. musst du schon selber machen wenn der browser keine cookies nimmt...

TheMiller 11. Okt 2007 19:15

Re: [PHP] SESSION geht verloren
 
Also,

das Problem besteht immernoch und scheint ein IE7 Bug zu sein. Er ist der einizige Browser, der das Problem hat und einige andere Seiten haben das Problem auch.

Ich habe nur keine Ahnung, wie man da entgegenwirken kann...

Die Session an die URL dranhängen ist mir zu unsicher (Session-HiJacking etc.). Die Session wird in einer DB gespeichert, aber ich habe ja keinerlei Identifizierungsmerkmale um die Session wieder rauszuholen, wenn sie wiedermal verloren geht.

Bitte gebt mir nochmal Tipps!

Danke

DGL-luke 11. Okt 2007 19:19

Re: [PHP] SESSION geht verloren
 
IP?

bzw. häng die sid an die url, und wenn du kein cookie kriegst, holst du dir die sid UND überprüfst die IP.

Wenn jemand die Session hijackt, hat er ne andere IP - wenn jemand eine IP zugewiesen bekommt, die grade noch bei dir angemeldet war, hat er keine SID.

TheMiller 12. Okt 2007 08:26

Re: [PHP] SESSION geht verloren
 
Naja, was ist zB im Internetcafe. Da haben sie auch die gleiche IP. Ich würde die SID halt ungerne freigeben. Ich grübel die ganze Zeit schon nach einer anderen Methode...

oder ist das falsch?


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz