2

我收到一个重定向循环错误,对于我的一生,我无法弄清楚如何或为什么。这是我的设置:

路由器

Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));

应用控制器

class AppController extends Controller {
    public $components = array(
        'DebugKit.Toolbar',
        'Acl',
        'Auth' => array(
            'authorize' => array('Actions' => array('actionPath' => 'controllers')),
            'loginAction' => array('controller' => 'users', 'action' => 'login'),
            'loginRedirect' => array('controller' => 'users', 'action' => 'index'),
            'logoutRedirect' => array('controller' => 'pages', 'action' => 'display', 'home')
        ),
        'Session'
    );
    var $helpers = array('Html', 'Form', 'Session');

    public function isAuthorized($user){
        return true;
    }

    function beforeFilter() {
    }
}
4

1 回答 1

2

这可能是因为您没有将 display() 方法设置为 public。这就是为什么它可能会重定向到同一页面并且该网页未经过身份验证。

因此,您可以使用以下代码将您的“display() 方法”放在页面控制器中,以便公众访问:

 //Define following method in your controller PagesController.php
 function beforeFilter()
 {
      $this->Auth->allow('display');
 }

希望它对你有用。请询问是否不适合您。

于 2012-07-16T04:50:24.320 回答