我可以转到我的网站,在DebugKit > Session中查找,并看到"Auth“变量-运行良好,一切都很好。
但是-在两台机器上(总共测试了5-7台),并且只在Chrome中,Auth变量完全缺失。这会阻止用户登录、搞砸redirects...etc等。
我们已经尝试卸载并重新安装Chrome -我们确保Chrome中的安全设置和会话/cookie设置与所有其他work...etc等的计算机相同。(也许我们遗漏了一个?,但是-全新安装,所以...)。我们确保我们使用的都是同一版本的Chrome。
起初我认为这可能是我的代码有问题(现在仍然可能是),但后来我们尝试在一台“愚蠢的”计算机上登录到另一个Cake站点,它也做了同样的事情--无法登录。
发布于 2012-05-04 21:07:05
它一定与安全组件有关。当我把它关掉的时候,他们就可以正常登录了。
仍然不确定到底是什么问题,但升级了我的网站到CakePHP 2.2 beta,和这不是一个问题,现在。
发行说明are here。
这是2.1.2稳定版本的一些发行说明(我在2.1上)-这些是与会话/身份验证相关的注释,等等,可能与这个问题有关:
如果会话为空,
发布于 2012-04-26 12:18:54
我刚刚设法在我的机器上解决了这个问题。
似乎我的Chrome设法在同一个域名CAKEPHP上获得了两个同名的cookies。
为了确保所有浏览器的所有cookie都被重置,我更新了/app/Config/core.php
中的会话配置
Configure::write('Session', array(
'defaults' => 'php',
'cookieTimeout' => 0,
'cookie' => 'newNameSESSION',
));
注意键' cookie‘显式地为会话标识设置了一个新的cookie名称。在此更改后,我可以从以前无法登录的所有浏览器登录到我的应用程序。
https://stackoverflow.com/questions/10256523
复制相似问题