2012-10-14 91 views
1

此cookie不可用于www.domain.com,但可用于domain.com。奇怪的是,firefox在www.domain.com(使用视图信息但我的服务器无法识别cookie)看到cookie。我做了一个体面的搜索量,我发现的唯一解决方案是将域设置为.domain.com,但是我的cookie不能在domain.com上阅读。这里是我的代码:无法从www访问PHP cookie。子域

//this results in no access through domain.com 
setcookie('username', $username, time()+3600*24, '/', '.domain.com'); 

//this results in domain.com access but not www.domain.com 
setcookie('username', $username, time()+3600*24, '/'); 

让cookie可用于domain.com和所有子域的关键是什么?

+0

你试过'的setcookie( '用户名',$的用户名,时间()+ 3600 * 24, '/', 'domain.com');' – j08691

+0

的该cookie可用于的域。将域设置为'www.example.com'将使cookie在www子域和更高子域中可用。可用于较低域名的Cookie(例如'example.com')可用于较高的子域名,例如'www.example.com'。老旧浏览器仍然实施已弃用的»RFC 2109可能需要领先的。以匹配所有子域。 –

+0

我读了阅读,在PHP指南和域设置为domain.com,我无法从domain.com访问cookie,只有www.domain.com – Osman

回答

2

试试:

setcookie('username', $username, time()+3600*24, '/', 'domain.com');

+0

这是不可访问的domain.com – Osman

+0

尝试删除cookie。 – 2012-10-14 02:34:49

+0

这是问题......正如我在我的评论中所说的,我的所有调整导致我的注销系统不会正确删除旧的cookie,因此cookies不断累加!谢谢! – Osman