我正在尝试设置我的PHP $ _SESSION并使其可用于所有子域。除了尝试从根域( www )检索会话时,此方法正常。
如果我在 www 时启动会话,则不与任何子域共享。如果我在子域上发起会话,它将不与 www 共享。
我将session_set_cookie_params(index.php)和session.cookie_domain(php.ini)正确设置为.domain.com
当我在 www 上回显$ _COOKIE [“PHPSESSID”]时,我得到一个与所有子域上使用的字符串不同的字符串。 $ _COOKIE [“PHPSESSID”]的所有子域都具有相同的值。
我希望能够在 www 上发起会话,并且能够在所有子域上使用该会话。这有什么解决方案吗?
感谢您的帮助。
答案 0 :(得分:3)
尝试为会话设置名称
会话名称( “结构域”);
在设置会话cookie参数之前。
session_name("domain");
session_set_cookie_params(0, '/', '.domain.com');
session_start();