0

我一辈子都无法在两个 URL 上使用 $_SESSION ......它们是同一个域,只有一个 htaccess 重写更改任何 URL:

domain.com/ACCOUNT_NAME to domain/ACCOUNT_NAME.com

我尝试了以下方法:

session.cookie_domain = ".domain.com"

我用上面的内容更新了我的 php.ini 文件,但这不起作用。我也尝试了以下没有成功,

ini_set('session.cookie_domain','.domain.com');

有什么建议么?或者也许我应该以某种方式将会话数据存储在数据库中......

4

1 回答 1

0

您对域命名的想法是错误的。

不可能有像这样的域名domain/ACCOUNT_NAME.com- 域名中不允许使用斜杠(更不用说您需要为每个用户注册另一个二级域),也不能作为域名的分隔符。即使您设法使其在本地运行,您也永远无法将这样的域名公之于众。仅用于您可以以以下形式拥有的子域ACCOUNT_NAME.example.com

请阅读域名:域名

所以,你只有两个选择

  • example.com/bob- 你需要一个重写规则(你称之为.htaccess的东西)
  • bob.example.com- 您不需要为此重写,但需要进行一些 DNS 和 Web 服务器调整。

一旦您解决了域命名问题,您的会话将适用于所有子域。由于它显然sub仅适用于 -domains,因此意味着可以为完全不同的域example.com设置 cookie,bob.example.com但不能为任何其他域设置 cookie。example.bob.combob.com

于 2013-03-26T16:13:01.947 回答