我可以访问我的网站,查看DebugKit>会话,并看到“Auth”变量 - 工作正常,一切都很好。
但是 - 在两台机器上(经过5-7测试),只有在Chrome中,Auth变量完全丢失。这样可以防止用户登录,搞砸重定向等等。
我们已尝试卸载并重新安装Chrome - 我们确保Chrome中的安全设置和会话/ Cookie设置与所有其他工作的计算机等相同...(也许我们错过了一个?,但是 - 全新安装,所以...)。我们确保我们都使用相同版本的Chrome。
起初我认为这可能是我的代码的一个问题(它仍然可能是),但后来我们尝试在其中一个“愚蠢”的计算机上登录另一个Cake网站,它做了同样的事情 - 可以'登录。
答案 0 :(得分:2)
我刚刚设法在我的机器上解决了这个问题。
似乎我的Chrome设法获得了两个同名域名相同的Cookie - CAKEPHP。
为了确保为所有浏览器重置所有Cookie,我已在/app/Config/core.php
更新了我的会话配置:
Configure::write('Session', array(
'defaults' => 'php',
'cookieTimeout' => 0,
'cookie' => 'newNameSESSION',
));
注意键'cookie'明确为会话标识设置新的cookie名称。在此更改之后,我能够从之前无法登录的所有浏览器登录到我的应用程序。
答案 1 :(得分:0)
它必须与安全组件有关。当我关闭它时,它们可以正常登录。
仍然不确定问题究竟是什么,但我的网站已升级为CakePHP 2.2 beta,现在不是问题。
发行说明are here。
以下是2.1.2稳定版本(我在2.1版本)中的一些发行说明 - 这些是与Sessions / Auth ...等相关的,可能与问题有关:< / p>