如何在PHP中创建cookie以存在于不同的域中


how to create a cookie in php to exist in a different domain

我正在尝试弄清楚如何使用php函数setcookie()在域X中设置cookie并存在于域Y中,以便我可以完成单点登录。我想我错过了一些东西,这是我的代码:

在域 X 上并使用以下代码时,它成功创建了一个 cookie,其中域设置为 X,路径为/

setcookie('ssisid', $authentication['session']['session_id'], time() + 3600, '/');

当我尝试转到域 Y 时,未设置 cookie。

当我尝试将域 Y 添加到代码中时:

setcookie('ssisid', $authentication['session']['session_id'], time() + 3600, '/', 'http://www.example.com');

如果 example.com 是"我的网站"的占位符,则在任一域上都没有创建 Cookie。

我错过了什么?

我想通了。我的第一个只有路径的代码是正确的。问题是我处于Chrome隐身模式。我知道这一点,并且我假设隐身模式下的所有选项卡都是同一会话的一部分并且能够传递cookie,但我想不是。