SESSIONS出了点问题

时间:2011-08-26 07:52:23

标签: php session cakephp

抱歉我的英语,但我会尽力解释我的问题 - 我有使用大量子域名的网站 当我在主子域www.site.com中运行场景并向该场景中的SESSION添加一些信息时,我重定向到subdomain.site.com,此处SESSION为空

这是我对cookie的设置

$this->Cookie->domain = ".site.com";        
$this->Cookie->key = md5('key');        
$this->Cookie->path = '/';

我试图将THE SESSION保存在文件中,但它没有帮助

Configure::write('Session.save', 'cake');

我试过这个ini_set('session.cookie_domain','。site.com'); 但它也没有帮助

任何想法?

2 个答案:

答案 0 :(得分:1)

如果子域中有下划线(_),IE在接受cookie时会出现问题。例如subdomain.tld.com没问题。 sub_domain.tld.com不好。可能是那样。

答案 1 :(得分:1)

当CakePHP' Security.level'设置为“高”'或者' medium',CakePHP将PHP session.referer_check设置为您的站点主机名。

但是,当用户单击电子邮件客户端内的链接时,引用者检查测试失败,并且会话被标记为无效。

您需要做的是:

1)设置CakePHP' Security.level'作为'低'

OR

2)为CakePHP提供自定义会话配置,如here所示,设置' session.referer_check'以这种方式来一个空字符串:

ini_set('session.referer_check', '');