设置了多个 SESSION cookie?

multiple SESSION cookies being set?

我的站点正在发送两个不同的会话 ID cookie (PHPSESSID),一个在 "www.sitename.com" 下,另一个在 "sitename.com" 下。

I read this answer here 说要指定在第 5 个参数中使用的域,但是自动创建的 SESSION cookie 呢?

我认为问题是 facebook 登录使用了带有 www 的 PHPSESSID。在域中,而手动登录则没有。这会导致两个不同的 PHPSESSID cookie,这真的把事情搞砸了。

不确定为什么会发生这种情况或如何强制 Facebook 不使用 www。

会话cookie参数可以通过两种方式设置:

您当前的设置可能没有提供导致主机名使用的 cookie_domain 设置。

如果您选择使用该函数,请记住在会话开始之前调用它(例如在session_start之前)。如果您打开了会话自动启动,php.ini 方式是您唯一的选择。