PHP蛋糕子域会话链接问题?

时间:2011-09-24 00:43:38

标签: php session cakephp subdomain

我有php蛋糕会话和子域名的问题。我已成功完成所有权利。当我试图从

subdomain1.domain.com 

subdomain2.domain.com 

当我把这些浏览器的网址设置得很好...当我尝试使用<a href=""> tag进行此操作时出现问题,在重定向的子域上,我将收到新的会话ID。

我无法向我自己解释这怎么可能,纯PHP脚本工作正常,但在php蛋糕是这个错误!谢谢你的任何建议...

3 个答案:

答案 0 :(得分:1)

好吧,我调试整个php蛋糕会话组件和lib,我找出2个解决方案

  1. 更容易 - 在core.php安全级别设置为低

    配置::写('Security.level','低');

  2. 高级 - 为会话创建新的配置文件,就像Ivo所说,它在教程http://book.cakephp.org/view/1310/Sessions中,最重要的是设置

    ini_restore( 'session.referer_check'); 因为默认情况下php cake check referrer,如果它不是同一个域,它将导致生成新的SESSIONID

答案 1 :(得分:0)

我不认为这与蛋糕有关。 默认情况下,PHP会为您提供域的会话。

  • subdomain1.domain.com是一个域名,
  • subdomain2.domain.com是另一个域
  • domain.com是另一个不同的域名
  • www.domain.com是另一个不同的域名

所有这些示例都是4个不同的域,并有自己的会话。

如果要在多个(子)域之间共享会话,可以尝试设置session.cookie_domain变量,如下所示;

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

答案 2 :(得分:0)

请尝试使用此代码:

http://book.cakephp.org/view/1310/Sessions

按照说明创建蛋糕会话保存的自定义配置。