如何:跨子域的持久PHP会话

Ada*_*ick 7 php cookies session

可能重复:
PHP:Cookie域/子域控制
允许php会话转移到子域

重要信息

  • 该网站由数百个子域名"example.domain.com"组成
  • 登录我网站的用户拥有"记住我"功能
  • 用户可以从任何子域登录(并且他们必须能够通过该会话导航到任何子域)

问题

  • 目前,当用户通过一个子域连接时,其会话/ cookie(无论他们是否选择了cookie选项)在其他子域中无法识别.

  • 必须要做什么才能使用户会话在domain.com的所有子域中保持持久性?换句话说,我不希望用户必须登录每个子域.

Gre*_*ver 1

更改 php.ini:

session.cookie_domain = domain.com
Run Code Online (Sandbox Code Playgroud)

那么它将对所有子域有效。但这取决于所有子域均由同一服务器提供。

如果是多台服务器,则必须通过NFS共享会话文件夹。或者您只添加另一个 cookie 以用于自动登录,并为每个子域提供单独的会话。

http://en.php.net/manual/en/function.setcookie.php#domain

但您的自动登录 cookie 会确保安全。