簡體   English   中英

谷歌Chrome Cookie - HTTP和HTTPS

[英]Google Chrome Cookies - HTTP & HTTPS

我有一個網站使用www.example.com作為標准頁面,使用secure.example.com作為HTTPS。 我試圖在用戶登錄時設置一個cookie,該cookie在網站的HTTP和HTTPS版本上都有效。

我這樣做是通過將路徑設置為“/”而將域設置為“.example.com”。 這在Firefox和Internet Explorer中工作正常,但在Chrome中,cookie僅適用於設置它的網站版本( http://www.example.comhttps://secure.example.com

這是一個錯誤還是我做錯了什么? 如果它是一個bug是有解決方法嗎?

cookie由標頭中的PHP設置。

setcookie("login",base64_encode($email."::".md5($password)),2840184012,"/",".example.com");

您無法同時為HTTP和HTTPS設置Cookie。 您需要設置兩個單獨的cookie,一個用於HTTP,另一個用於HTTPS:

setcookie("login", base64_encode($email."::".md5($password)), 2840184012, "/", ".example.com");
setcookie("login", base64_encode($email."::".md5($password)), 2840184012, "/", ".example.com", true);

這僅在您在https://secure.example.com中設置cookie時才有效,因為您只能通過HTTPS設置安全cookie。

哦,順便說一句: 不要存儲在cookie中的認證信息! 請改用曾經有效的身份驗證令牌。

暫無
暫無

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

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