如何获取特定cookie的域名?

时间:2011-10-27 08:34:38

标签: php cookies subdomain

有一个网站www.example.com
所有cookie都设置为www子域 现在有一个新的子域名,我希望所有子域名都可以看到cookie。

目标是将所有旧访问者的www.example.com cookie重写为.example.com,或者为.example.com编写新的访问者(如果设置为www)。

为此,我想获得现有cookie的域名 可能吗?是否有用于此目的的php函数?

3 个答案:

答案 0 :(得分:4)

我认为在阅读Cookie时域名不可用,这受到浏览器的限制。解决方案是删除旧cookie并将其更改为新域。

E.g。

$value = $_COOKIE['TestCookie'];
setcookie("TestCookie", "", time() - 3600, "www.example.com");
setcookie("TestCookie", $value, time + (60 * 60 * 24 * 30), ".example.com");

答案 1 :(得分:1)

如果我理解正确,您想要更改客户端上当前存在的Cookie的域名吗?

这是不可能的(*)。

当获得cookie服务器端时,您是否有可能看到它是否为www域设置,请记住从客户端传递的cookie没有域信息?

(*)可能在客户端使用JavaScript。

答案 2 :(得分:1)

您可以使用PHP函数session_get_cookie_params()。我希望这能成功。

domain:"www.domain_name.com"
httponly:false
lifetime:1525181833
path:"/"
secure:false