多个站点范围的cookie / $ config ['cookie_domain']

时间:2012-03-12 03:36:22

标签: php codeigniter config

在已启用网站的 www.test.com 下,我有多个VirtualHost配置。 ServerName有所不同(例如 test1.com test2.com test3.com ),但只指向一个DocumentRoot。

我可以使用$_SERVER['SERVER_NAME']检测用户当前所在的服务器名称。但是,我们有一个特定的页面,需要指向一个特定的子域。启用站点范围的cookie绝对是这个项目的一部分。

我关注的是:无论如何在 config.php 中有多个$config['cookie_domain']?所以我可以有这个匹配的想法:

$server_name = $_SERVER['SERVER_NAME'];

if($server_name == "test1.com")
    $config['cookie_domain'] = ".test1.com";
else if($server_name == "test2.com")
    $config['cookie_domain'] = ".test2.com";
... // so on

我甚至尝试将其添加到 config.php 中,但没有运气。

1 个答案:

答案 0 :(得分:1)

是的,您正在做的事情应该适用于每个域,但Cookie的本质是它们本质上不是跨域的。您需要一些额外的魔力才能在多个顶级域中访问cookie(或会话数据)。