我正在尝试设置我的 PHP $_SESSION 并让它在所有子域中可用。这工作正常,除非尝试从根域 (www) 检索 session 。
如果我在 www 上启动 session ,那么它不会与任何子域共享。如果我在子域上启动 session ,它不会与 www 共享。
我将 session_set_cookie_params (index.php) 和 session.cookie_domain (php.ini) 正确设置为 .domain.com
当我在 www 上回显 $_COOKIE["PHPSESSID"] 时,我得到的字符串与所有子域上使用的字符串不同。所有子域都具有相同的 $_COOKIE["PHPSESSID"] 值。
我希望能够在 www 上启动 session ,并能够在所有子域上使用该 session 。有什么解决办法吗?
感谢您提供的所有帮助。
最佳答案
尝试为 session 设置一个名称
session_name("domain");
在设置 session cookie 参数之前。
session_name("domain");
session_set_cookie_params(0, '/', '.domain.com');
session_start();
关于php - 在根域 (www) 上启动一个 php $_SESSION 并跨子域共享 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12553795/