PHP 怎麼帶著 Cookie 跳轉?
如果在同一個網域下系統會自動將Cookie帶著,如果要跨域就需要拼接到URL後面,Cookie是一段不超過4KB的小型文字數據,由一個名稱、一個值和其它幾個用於控制Cookie有效期、安全性、使用範圍的可選屬性組成的。
伺服器端的發送與解析
伺服器端像客戶端發送Cookie是透過HTTP回應訊息實現的,在Set -Cookie中設定需要像客戶端發送的cookie,cookie格式如下:
Set-Cookie: "name=value;domain=.domain.com;path=/;expires=Sat, 11 Jun 2016 11 :29:42 GMT;HttpOnly;secure"
其中name=value是必選項,其它都是可選項。 Cookie的主要構成如下:
name:一個唯一確定的cookie名稱。通常來講cookie的名稱是不區分大小寫的。
value:儲存在cookie中的字串值。最好為cookie的name和value進行url編碼
domain:cookie對於哪個域是有效的。所有向該網域發送的請求中都會包含這個cookie訊息。這個值可以包含子域(如:
yq.aliyun.com),也可以不包含它(如:.aliyun.com,則對於aliyun.com的所有子域都有效).
path: 表示這個cookie影響到的路徑,瀏覽器跟會根據這個配置,像指定網域中符合的路徑發送cookie。
expires:失效時間,表示cookie何時應該被刪除的時間戳(也就是,何時應該停止向伺服器發送這個cookie)。如果不設定這個時間戳,瀏覽器會在頁面關閉時即將刪除所有cookie;不過也可以自行設定刪除時間。這個值是GMT時間格式,如果客戶端和伺服器端時間不一致,使用expires就會有偏差。
max-age: 與expires作用相同,用來告訴瀏覽器此cookie多久過期(單位是秒),而不是一個固定的時間點。正常情況下,max-age的優先權高於expires。
HttpOnly: 告知瀏覽器不允許透過腳本document.cookie去更改這個值,同樣這個值在document.cookie中也不可見。但在http請求張仍然會攜帶這個cookie。注意這個值雖然在腳本中不可獲取,但仍然在瀏覽器安裝目錄中以檔案形式存在。這項設定通常在伺服器端設定。
secure: 安全標誌,指定後,只有在使用SSL連結時候才能傳送到伺服器,如果是http連結則不會傳遞該訊息。就算設定了secure 屬性也不代表他人不能看到你機器本地保存的cookie 信息,所以不要把重要信息放cookie就對了伺服器端設定
推薦教學:《PHP》
以上是PHP 怎麼帶 Cookie 跳轉?的詳細內容。更多資訊請關注PHP中文網其他相關文章!