2012-01-03 75 views
3

在我Zend的應用,我試圖讓我們的身份驗證的用戶被自動註銷在關閉瀏覽器session.cookie_lifetime不適用於Firefox?

爲此,我會寫下面的代碼:

ini_set('session.cookie_lifetime', 0);

及其對像的Chrome,Safari瀏覽器,IE7和IE8瀏覽器工作正常,但在Firefox的情況下,用戶仍然當他們關閉瀏覽器時登錄。

有誰知道是什麼原因造成的問題?

在此先感謝...

回答

3

0值表示「會話cookie」 - 即一個瀏覽器應該破壞時,「會議」結束,關閉瀏覽器。

但是:

  • 不同的瀏覽器有什麼「會話」是不同的解釋 - 一些會破壞這些cookie,當你關閉的標籤,有的當您關閉窗口時,一些不會破壞直到瀏覽器的所有實例都關閉 - 所有窗口中的所有選項卡。
  • 由於cookie由客戶端存儲和傳輸,它們完全是客戶端的責任。你不應該單獨依靠cookie來控制用戶是否擁有有效的登錄,因爲他們很容易被欺騙,你還應該實現某種活動超時。關閉所有打開的標籤和窗口,看進程列表以確保沒有留下實例 -

確保測試時,你實際上已經結束了你的Firefox會議。如果您仍然遇到問題,您可能正在尋找Firefox中的某種錯誤(或者您在about:config中做了一些奇怪的更改),並且您需要詢問Firefox特定的幫助 - SuperUser.com將會是更好的地方那。你可以確信的一件事是,如果它在其他地方工作,它不是你的PHP的問題。

相關問題