Cookie顶级域名、二级域名、三级域名共享

首先说明一点:cookie在不同域名之间是无法共享的,即跨域问题!但是在顶级域名、二级域名、三级域名中是可以共享的!


准备如下三个域名:


顶级域名:dalomao.com


二级域名:super.dalomao.com


三级域名:big.super.dalomao.com


访问顶级域名

访问顶级域名 dalomao.com,设置如下四种情况的cookie


Y表示可以共享cookie,N表示无法共享


domain参数dalomao.comsuper.dalomao.combig.super.dalomao.com备注

setcookie(‘name’, time()+1)YYY默认设置当前访问的域名,即顶级域名

setcookie(‘name’, time()+1),’/’,‘dalomao.com’YYY设置顶级域名,全部共享

setcookie(‘name’, time()+1),’/’,‘super.dalomao.com’NNN

setcookie(‘name’, time()+1),’/’,‘big.super.dalomao.com’NNN

访问二级域名

访问二级域名 super.dalomao.com,设置如下四种情况的cookie


Y表示可以共享cookie,N表示无法共享


domain参数dalomao.comsuper.dalomao.combig.super.dalomao.com备注

setcookie(‘name’, time()+1)NYY默认设置当前访问的域名,即二级域名

setcookie(‘name’, time()+1),’/’,‘dalomao.com’YYY设置顶级域名,全部共享

setcookie(‘name’, time()+1),’/’,‘super.dalomao.com’NYY

setcookie(‘name’, time()+1),’/’,‘big.super.dalomao.com’NNN

访问三级域名

访问三级域名 big.super.dalomao.com,设置如下四种情况的cookie


Y表示可以共享cookie,N表示无法共享


domain参数dalomao.comsuper.dalomao.combig.super.dalomao.com备注

setcookie(‘name’, time()+1)NNY默认设置当前访问的域名,即三级域名

setcookie(‘name’, time()+1),’/’,‘dalomao.com’YYY设置顶级域名,全部共享

setcookie(‘name’, time()+1),’/’,‘super.dalomao.com’NYY

setcookie(‘name’, time()+1),’/’,‘big.super.dalomao.com’NNY

总结

在setcookie中省略domain参数,那么domain默认为当前域名

domain参数可以设置父域名以及自身,但不能设置其它域名,包括子域名,否则cookie不起作用

如果cookie设置为顶级域名,则全部的域名,包括顶级域名、二级域名、三级域名等,都可以共享该cookie

如果cookie设置为当前域名,则当前域名及其下面的所有子域名可以共享该cookie

————————————————

版权声明:本文为CSDN博主「达龙猫」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/supermao1013/java/article/details/83827310