簡體   English   中英

php httponly cookies在瀏覽器關閉時被刪除

[英]php httponly cookies being deleted on browser close

我正在我的網站“記住我”功能,我正在使用session_set_cookie_params來保持會話活着,即使用戶決定關閉他或她的瀏覽器。 我遇到的問題是瀏覽器刪除cookie,即使我將它們設置為持久性,這只有在我將cookie上的HttpOnly標志設置為true時才會發生。

這是我所擁有的一些pseucode:

為php ini設置cookie生命周期

為php ini設置垃圾收集器最大生命周期

確定用戶是否想要持久會話

設置會話cookie的時間並確保它使用HttpOnly

開始會議

以下是我目前對正在使用的函數的理解,如果我對任何事情有誤,請告訴我:

  • 使用session_set_cookie_params時,如果希望在瀏覽器關閉時刪除會話,則將時間設置為0。
  • 將時間設置為大於零的任何值,會話cookie將在該時間內保持活動狀態。
  • 如果您不希望通過javascript訪問cookie,請將HttpOnly設置為true

在這種情況下,我絕對不希望通過javascript訪問cookie。 我做錯了什么嗎?

另請告訴我是否應該添加更多信息,這是我第一次提問。 謝謝。

好吧所以我最終解決了這個問題,因為事實證明它與HttpOnly標志無關。 最后,它必須將cookie的持久性設置在錯誤的位置。

所以問題在於,當我在設置cookie之前使用setcookie持久化時。 為了解決這個問題,我只需在調用setcookie函數之前將cookie設置為持久化。

我很抱歉假設錯誤與HttpOnly標志有關,這是一個我不應該做的大假設。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM