phpbar.de logo

Mailinglisten-Archive

[php] Problem beim enloggen (uebergabe per Session)

[php] Problem beim enloggen (uebergabe per Session)

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Fre Mai 13 09:55:26 CEST 2005


Hi Stefan,

Stefan Brueckmann schrieb:
> Beim Einloggen in einen geschützten Bereich fliegt man, nachdem man
> erfolgreich die Startseite des geschützten Bereiches erreicht hat,
> nach dem ersten klick auf einen weiterführenden Link raus.
> Das passiert aber nur beim Server im Internet.
> Auf meinem lokalem Entwicklungsserver (Debian Sarge, Apache 2.0.54,
> PHP 4.3.10-13) passiert das nicht.
>
> So funktioniert das einloggen:
>
> Wenn die Daten geprüft wurden werden sie mit einer Sessionvariablen
> weitergegeben
>
>       session_start();
>       $_SESSION['login_user']= $_POST['login_user'];
>       $_SESSION['login_pword']= $_POST['login_pword'];
>       Header("Location: ".$go_in."?".sid);
>
>
> Im geschützen Bereich wird wieder die Session mit
> session_start();
> gestartet und dann werden $_SESSION['login_user'] und
> $_SESSION['login_pword'] geprüft.
> Wenn die Prüfung nicht das gewünschte Ergebnis bringt landet man
> wieder am einlogfenster.
>
>
>
> Beim ersten log in sieht man die Sessionid in der URL, beim zweiten
> wird sie als Cookie weitergegeben.
> Lokal sieht man die Sessionid in auch der URL, beim weiterklicken,
> geht es dann auch per Cookie.
>
> Ich verwende dieses Script schon sehr lange und erst seit einiger Zeit
> tritt dieses Phänomen auf.
> Es hat also sehr wahrscheinlich etwas mit den Providereinstellungen zu
> tun.
>
> Hat jemand eine Idee, wie man das Problem lösen kann, so dass man sich
> nur einmal einloggen muss?

ich würde als erstes mit phpinfo() die Session-Einstellungen beider Server
vergleichen, insbesondere folgende Werte:

     session.use_cookies
     session.use_only_cookies
     session.cookie_path
     session.cookie_domain
     session.cookie_secure

Wenn ich Deine Beschreibung richtig verstanden habe, könnte es sein, daß
Sessions auf Deinem Internetserver nur mit Cookie erlaubt sind oder daß
der Cookie aufgrund der Art und Weise, wie er gesetzt wurde, nicht wieder
erkannt wird. Letzteres glaube ich aber eher nicht.


Viele Grüße

Lutz
session.cache_limiter
session.use_trans_sid boolean


php::bar PHP Wiki   -   Listenarchive