首先,我在本文中使用了所有建议的方法: Allow php sessions to carry over to subdomains
为方便起见,以下是我已经遵循的提示:
以下是3个选项。
将它放在你的php.ini中:
session.cookie_domain = ".example.com"在.htaccess中:
php_value session.cookie_domain .example.com作为脚本中的第一件事:
ini_set('session.cookie_domain','.example.com' );
我有9个子域名(losangeles.mysite.com,sandiego.mysite.com等),我希望用户能够在他们之间保持签名。但是,截至目前,服务器正在将每个子域视为具有单独会话的完全包含的站点。
还有什么我可以做的吗?或者我该如何解决这个问题?
答案 0 :(得分:4)
我怀疑为.foo.example.com而不是.example.com设置了Cookie。尝试为Firefox安装Live HTTP Headers附加组件并检查cookie的设置。
要执行此操作,请打开Live HTTP Headers并打开窗口,转到设置cookie的页面。在窗口中,应该有一行看起来像这样。
Set-Cookie:lng = en-US;路径= /;域= .example.com的;
如果为domain = .foo.example.com设置了cookie;然后你知道问题是什么。但是,如果域名是.example.com,则会发生其他事情。
此外,如果在foo.example.com上为.example.com设置了Cookie,请检查浏览器是否向bar.example.com发送Cookie。这应该有助于追踪问题所在。