Neue Session - Hilfe bei Serverkonfiguration
LSpreee
- php
Ich habe jetzt schon wirklich einiges versucht, aber ich brauche Eure Hilfe.
Ich habe eine Seite auf einem Server A. Dort brauche ich die SESSION_ID nicht über die URL übergeben, die Session bleibt immer erhalten. Gleiches Skript auf Server B erzeugt eine neue Session-Id und damit neue Session. Das merkwürdige ist, ich habe die phpinfo() aufgerufen und habe keinen Unterschied bei den Cookie-Parametern entdecken können. Was ist hier los?
Ich habe dieses Minimalbeispiel (u.a.) verwendet:
a.php
<?php
session_start();
$_SESSION['test'] = "hier berserker";
echo $_SESSION['test'];
?>
b.php
<?php
session_start();
echo $_SESSION['test'];
?>
Zunächst a.php aufgerufen, dann (per Browserzeile) b.php aufgerufen. Klappt auf dem einen Server sehr gut.
Das sind die Konfigs:
session.auto_start Off Off Off Off
session.bug_compat_42 Off Off On On
session.bug_compat_warn On On On On
session.cache_expire 180 180 180 180
session.cache_limiter nocache nocache nocache nocache
session.cookie_domain no value no value no value no value
session.cookie_httponly Off Off Off Off
session.cookie_lifetime 0 0 0 0
session.cookie_path /~partiuni /~partiuni / /
session.cookie_secure Off Off Off Off
session.entropy_file no value no value no value no value
session.entropy_length 0 0 0 0
session.gc_divisor 1000 1000 100 100
session.gc_maxlifetime 28800 28800 720 720
session.gc_probability 1 1 1 1
session.hash_bits_per_character 5 5 4 4
session.hash_function 0 0 0 0
session.name PHPSESSID_partiuni PHPSESSID_partiuni PHPSESSID PHPSESSID
session.referer_check no value no value no value no value
session.save_handler files files files files
session.save_path /home/partiuni/partiuni/tmp /home/partiuni/partiuni/tmp no value no value
session.serialize_handler php php php php
session.use_cookies On On On On
session.use_only_cookies Off Off Off Off
session.use_trans_sid 0 0 0 0
Die ersten beiden Werte sind Server B (lokal, master), die letzten beiden die vom Server A.
B ist der "Problemserver".
Vielen Dank für Aufklärung
Hi,
Das merkwürdige ist, ich habe die phpinfo() aufgerufen und habe keinen Unterschied bei den Cookie-Parametern entdecken können.
Na ja, der Cookie-Path ist zumindest anders.
Zunächst a.php aufgerufen, dann (per Browserzeile) b.php aufgerufen. Klappt auf dem einen Server sehr gut.
Und was kommt im Browser an, im Vergleich zum anderen Request? Set-Cookie-Header anschauen, bspw. mit Firebug.
MfG ChrisB
Vielen Dank Chris.
Der Fehler lautete: Undefined Index der $_SEESION-variable, wenn man b.php aufrief.
Ich habe ewig rumprobiert und plötzlich war der Fehler weg. Ich habe alle Skripte in den Zustand gebracht, wie sie während des Fehlers waren. Der Fehler bestand insgesamt ca. 2h.
Was kann das gewesen sein? Stört mich insofern, als dass es wieder kommen könnte! Passiert es mal, dass der Server vorübergehend irgendwas nicht schnallt???
Oder kann eine parallele Session auf einer anderen Internetseite im gleichen Browser das Problem sein? Ist es jetzt zwar auch nicht mehr, aber vielleicht hat der Browser was nicht geschnallt?
Danke und sorry für dieses unsinnige Posting. Ich habe wirklich versucht, alle Fehler auszuschliessen.
Grüße
LSpreee
Man sollte die Hinweise, die man bekommt auch lesen :[
Habe das Problem wieder und Dein Hinweis mit dem cookie.path war des Rätsels Lösung.
Vielen Dank nochmal.