2

我正在尝试设置我的 PHP $_SESSION 并让它在所有子域中都可用。除非尝试从根域(www)检索会话,否则这工作正常。

如果我在www上启动会话,那么它将不会与任何子域共享。如果我在子域上启动会话,它将不会www共享。

我将 session_set_cookie_params (index.php) 和 session.cookie_domain (php.ini) 正确设置为 .domain.com

当我在www上回显 $_COOKIE["PHPSESSID"] 时,我得到的字符串与所有子域上使用的字符串不同。所有子域都具有相同的 $_COOKIE["PHPSESSID"] 值。

我希望能够在www上启动会话,并能够在所有子域上使用该会话。有什么解决办法吗?

感谢您的任何帮助。

4

1 回答 1

3

尝试为会话设置名称

session_name("域名");

在设置会话 cookie 参数之前。

session_name("domain");
session_set_cookie_params(0, '/', '.domain.com');
session_start();
于 2012-09-23T16:08:06.857 回答