2
當我通過具有兩個IP地址的平衡網關將我的客戶端連接到我的託管服務器時,我在PHP中有一個奇怪的會話行爲。PHP會話與不同的客戶端IP丟失
我正確地用一個cookie初始化會話,我設置會話布爾變量和調試我打印此信息:
echo var_dump($_SESSION["islogged"]);
echo var_dump(session_id());
echo var_dump($_SERVER["REMOTE_ADDR"]);
比我刷新許多次的頁面,我得到兩個結果:
bool(false) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "48.129.84.146"
bool(true) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "96.19.184.38"
bool(true) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "96.19.184.38"
bool(false) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "48.129.84.146"
bool(false) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "48.129.84.146"
bool(true) string(26) "ism1vg1de6v0b1r8b2ng337uh3" string(13) "96.19.184.38"
...
廣告你可以看到會話是一樣的,但會話欄更改。 你知道如何解決這個問題嗎?
這是登錄檢查:
$ISLOGGED=!empty($_SESSION["islogged"])
這是註冊碼:
$ISLOGGED=$_SESSION["islogged"]=$_POST["password"]==$password;
奇怪。你有更多的代碼嗎?它可能在別的地方。 –
Php有點像「safe_mode」或類似的東西,檢查客戶端的IP? – Tobia