我想使用CakePHP的isAuthorized
功能,但只要拒绝访问,用户就会返回到他来自的页面。
到目前为止我能找到的最好的是使用authError-> 'You are denied'
甚至没有闪现。
我是否必须在return false;
功能的isAuthorized
行之前手动设置闪烁和重定向?
有没有办法检查它是否被拒绝然后自动执行404?
答案 0 :(得分:0)
听起来您需要配置Auth->loginRedirect
,这样当用户被拒绝时,他们就会被推送到登录页面。 Auth组件将记住用户尝试访问的页面,如果他们登录,则会将其重定向回该页面。
作为参考,本书详细介绍了Auth组件的配置。 http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html
我倾向于使用在AppController::beforeFilter()
public function beforeFilter() {
$this->Auth->loginRedirect = array('controller' => 'users', 'action' => 'login', 'admin' => false);
}