使用带两个不同域的cakephp会话

Vin*_*PHP 1 php session cakephp

我有两个名为http://sample.comhttp://example.com的不同域名.由CAKEPHP开发的示例网站和由corephp开发的示例网站.如果我要登录example.com,此会话应与cakephp会话匹配.如果我已经记录了网站的任何人,那么它将同时适用于两者.这可能吗.请建议我锻炼它的最佳方法是什么.

提前致谢.

Sli*_*liq 6

有一种常见的技术可以在一台服务器上运行不同的站点/域,称为vhosts.由于您可以为每个vhost指定会话路径,因此还可以为所有vhost定义相同的路径,这将导致共享会话.在项目A中创建的会话也可以在会话B中以其他方式进行.

如果你使用纯PHP,CakePHP或其他什么,vhosts不关心.会话是会话.

您需要的vhost规则(请注意,两个定义中的会话文件夹相同):

<VirtualHost *:80>
    ServerName www.sample.com
    DocumentRoot /var/www/xxx1
    <Directory "/var/www/xxx1">
        AllowOverride All
        php_value session.save_path "/var/mysessionfolder"
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerName www.example.com
    DocumentRoot /var/www/xxx2
    <Directory "/var/www/xxx2">
        AllowOverride All
        php_value session.save_path "/var/mysessionfolder"
    </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

要获得更多信息,请阅读此线程可能有用:如何防止在不同的apache vhost之间共享PHP会话?哪个问你想要什么.