7

我正在寻找一种在同一服务器上跨多个域维护 PHP 会话的方法。我将把我的网站与一个简单机器论坛集成,所以我需要使用基于 MySQL 的会话。谢谢!

4

2 回答 2

7

根据您修改 PHP 变量的首选方法(Apache 的配置,.htaccess),将 session.cookie_domain 值更改为一致的值。

我有多个子域,Apache 配置文件中的每个 VirtualHost 部分都包含以下行:

php_value session.cookie_domain mydomain.com

如果您在 .htaccess 文件中进行更改,语法应该类似。

更新了 bobert5064 的评论:

对于多个域(即domain1.com、domain2.org),我认为只需要选择一个通用域名(即domain1.com)即可。我从未尝试过这个,所以我无法验证它是否有效,但逻辑似乎是准确的。

http://us.php.net/manual/en/function.session-set-cookie-params.php中还描述了一种在 PHP 中设置变量方向的方法。该文档没有提及在不同域上设置 cookie 的能力或不能力。

于 2008-10-28T17:14:44.260 回答
1

如果一个站点要转发或链接到第二个站点,它可以在链接的href中包含会话 ID 或作为表单中的输入。类似于 George 的img 标签方法,但会话仅在需要时才会移动。

哪个最好取决于您网站的使用模式。

于 2008-10-28T18:41:15.100 回答