如何解决卡在重定向循环中的CakePHP应用程序?

时间:2009-05-01 06:23:10

标签: php cakephp redirect

我有一个卡在重定向循环中的CakePHP网站。我删除了所有执行重定向和代码的代码。我在Auth对象上关闭了autoRedirect。

当我退出网站并且在删除所有Cookie并且只是尝试加载主页后仍然存在时,就会发生这种情况。索引操作位于$this->Auth->allow

我不应该,它一直试图将我重定向到/ users / login然后重定向循环。登录操作也在允许列表中

有没有人有什么想法会导致这种情况?

6 个答案:

答案 0 :(得分:7)

如果添加扩展组件而非对象的自定义组件,也会在CakePHP 1.3中发生这种情况。

答案 1 :(得分:6)

您的<cake>/app/app_controller应该使用beforeFilter()方法,其中包含验证组件的所有行为。其中一种行为是用户未登录时的发送位置。

你会找到类似的东西:

// If cake should redirect automatically or you will do it in the User.login()
$this->Auth->autoRedirect = true; 
// And if the autoRedirect is true, where to redirect
$this->Auth->loginRedirect = '/user/login';

G'luck

答案 2 :(得分:3)

有时,如果你的数据库连接错误,,,应用程序将尝试连接到mysql,并将进行循环。 所以,如果数据库配置正确的话,请注意。

再见。

答案 3 :(得分:0)

我确实遇到了同样的问题,当我重新启动mySql服务时,重定向停止了。因此,请将其添加到要检查的事项列表中。

答案 4 :(得分:0)

看来有很多原因可以解释为什么在我试图访问

的情况下会发生这种情况

cakeapplication /用户/添加

而且我失踪了

'add'=>'*',

在usersController.php

中的权限数组中

答案 5 :(得分:0)

我最近遇到了这个问题而且我不知道为什么但是当我改变时(在我的AppController beforeFilter()方法中)修复了它:

$this->Auth->allow('*');

$this->Auth->allow();

当然,在我后来的控制器中,我否认了相应的行为。