程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 域名和cookie問題(域名後綴)

域名和cookie問題(域名後綴)

編輯:PHP綜合
域名和cookie
偶然想到一個問題:www.g.cn能把cookie設置為.g.cn,那麼www.com.cn能設置把cookie設置為.com.cn嗎?

試驗結果:不能。因為浏覽器知道www.com.cn的後綴是.com.cn而不是.cn,所以禁止設置cookie。
因為浏覽器內置了域名後綴列表。todo:如果以後出現新的後綴,而老浏覽器沒法更新列表,豈不是會允許設置cookie?

extension後綴 一級域名 二級域名 www.g.cn .cn g.cn *.g.cn www.com.cn .com.cn www.com.cn *.www.com.cn www.google.com.cn .com.cn google.com.cn *.google.com.cn
www.example.com能讀取到.example.com的cookie嗎?
能。
www.example.com能讀取到example.com的cookie嗎?
不能。todo:把www.example.com和example.com做SSO,即可防止cookie帶到static.example.com。
example.com能讀取到www.example.com的cookie嗎?
答:不能。
setcookie('a', 'aa', time() + 1234, '/', 'example.com'); 設置的cookie是 .example.com 還是 example.com的?
答:是.example.com的。
如果想設置example.com的cookie,需要使用setcookie('default', 'default', time() + 1234, '/');。
cookie的設置和讀取范圍:

HTTP請求域名 一級域名 cookie可設置(並可讀取)的范圍 cookie不可設置 cookie不可讀取 example.com example.com example.com,.example.com www.example.com www.example.com www.example.com example.com www.example.com,.www.example.com,.example.com example.com example.com g.com.cn g.com.cn g.com.cn,.g.com.cn .com.cn   www.com.cn www.com.cn www.com.cn,.www.com.cn .com.cn
設置cookie代碼:
復制代碼 代碼如下:
<?php
setcookie('default', 'default', time() + 1234, '/');
setcookie('a', 'aa', time() + 1234, '/', 'example.com');
setcookie('b', 'bb', time() + 1234, '/', '.example.com');
?>

讀取cookie代碼:
復制代碼 代碼如下:
<?php
var_dump($_COOKIE);
?>

結果截圖:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved