我一直有與會話現在一些日子在我的生產環境PHP混合了會議
我已經試圖找到在成噸的答案在這裏堆棧溢出的解決的問題,但似乎沒有我
- 用戶A登錄到工作中
- 用戶B登錄。現在,當你回到用戶A 他的會議是由用戶B.被覆蓋,所以我有兩個用戶「共享」的 相同會話。
旁註:
- 我有使用會話變量
- 我使用https和有效證書
- Cache是沒有問題的session_start()在每一頁的最上方,我已經嘗試設置標頭,以避免緩存
我使用PHP 5.4(我之前使用5.6和降級希望它可以解決我的問題)這是我的PHP.ini:
的session.save_path = 「/ tmp中」
session.cookie_secure = 1
session.use_cookies = 1個
session.use_only_cookies = 1
session.name = PHPSESSID
session.entropy_length = 32
session.cache_limiter =非緩存
session.cache_expire = 180
session.hash_function = SHA256
這是我的認證頁面的基本結構:
session_start();
... // after connection with the database I retrieve id and name
$_SESSION['id_logado'] = $user_id;
$_SESSION['nome_logado'] = $user_name;
我已經仔細檢查了每一頁中的每一行代碼。沒有變量名稱$ id_logado,所以它不應該干涉。高速緩存是可能不是問題,因爲我有標題,以避免session_start後緩存。我已經聯繫bluehost尋求幫助,當然他們不知道並且在指責自己。
您對您認爲是問題的描述不準確。當用戶B登錄他的信息時,將替換用戶信息。他們不是「分享」任何東西。當用戶B登錄時,您希望發生什麼不同?如果您認爲確實存在問題,請向我們展示相關代碼。 – Dave
只有1個用戶應該登錄每個會話或是我的邏輯錯誤在這裏? –
你能解釋一下爲什麼你認爲有一個「單身」會話?你怎麼得出這個結論,即用戶A的會話正在被替換? – Pogrindis