PHP蛋糕子域会话链接问题


PHP cake subdomains session link problem?

我有问题的PHP蛋糕会话和子域。我已经把一切都摆平了。当我试图从

subdomain1.domain.com 

subdomain2.domain.com 

当我把这些浏览器url…问题来了,当我试图使这个与<a href=""> tag,在重定向子域,我将收到新的会话id。

我不能向我自己解释怎么可能,纯php脚本工作良好,但在php蛋糕是这个bug!

好的,我调试了整个PHP蛋糕会话组件和库,我找到了两个解决方案

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

    配置:写("安全。水平"、"低");

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

    ini_restore("session.referer_check");因为默认情况下php会检查referrer,如果它不在同一个域,它会导致生成新的SESSIONID

我不认为这和蛋糕有关。默认情况下,PHP将为该域提供一个会话。

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

所有这些例子都是4个不同的域,有它们自己的会话。

如果您想在多个(子)域之间共享会话,您可以尝试设置会话。

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

试着用这个代替:

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

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