我需要为example.com设置cookie,但我希望static.example.com没有cookie。
在setcookie()中设置domain参数将使它们可用,例如example.com及其所有子域,这是我不想要的。
有什么想法吗?
来源:http://www.php.net/manual/en/function.setcookie.php#93641
[..]firefox将在域值前加一个句点(句号),如果该句点还不存在。这是因为firefox希望域参数值(如果存在)是域名,而不是主机名。
因此,如果www是主机名,则使用域值为www.example.com的setcookie()是不正确的。如果您想将cookie限制在单个主机上,请将域参数提供为空字符串,例如(注意最右边的参数):
setcookie("TestCookie", "SomeValue", time()+3600, "/~rasmus/", "");
这显然是不可能的。
如果有人找到了办法,我会改变接受的答案。
您可以为www.example.com
而不是example.com
显式设置cookie。请记住,www.example.com
也类似于子域,在其中设置cookie不会影响static.example.com
或something_else.example.com