我設置了一個使用會話處理用戶登錄的PHP編碼網站的測試版本。在測試服務器上,會話將在瀏覽器關閉時過期,因爲將所有內容複製到「乾淨」活動服務器,會話在瀏覽器關閉時保持原位,用戶在完全重新引導系統後的第二天仍然保持登錄狀態。session.cookie_lifetime = 0時,爲什麼會話在瀏覽器關閉時不會過期?
在php.ini
; Lifetime in seconds of cookie or, if 0, until browser is restarted. ; http://www.php.net/manual/en/session.configuration.php#ini.session.cookie-lifetime session.cookie_lifetime = 0
這意味着它應重新啓動瀏覽器到期。
我想,也許它被覆蓋的地方,但如果我的print_r的session_get_cookie_params在PHP中,我得到
Array
(
[lifetime] => 0
[path] =>/
[domain] =>
[secure] =>
[httponly] =>
)
有什麼我失蹤?
你嘗試在其他瀏覽器?你使用的是什麼瀏覽器?到期值可能會發送到瀏覽器,但瀏覽器可能會拒絕在關閉時刪除cookie。檢查您的瀏覽器設置,並在其他瀏覽器上測試。 – mauris 2011-12-15 10:08:24
在Firefox和IE中是一樣的。當然,如果這是一個瀏覽器問題,測試服務器上也會出現這種情況。這種行爲不會發生在其他網站上(我已經注意到了) – 2011-12-15 10:12:32
此外,客戶已經注意到網站是爲其構建的,他不希望它發生! – 2011-12-15 10:13:30