我想使用CakePHP的isAuthorized
功能,但是隻要訪問應該被拒絕,用戶就會返回到他來自的頁面。CakePHP isAuthorized false返回到同一頁面,而不是重定向到一個URL
目前爲止我能找到的最好的方法是使用authError-> 'You are denied'
,它甚至不會閃現。
手動設置return false;
行isAuthorized
函數之前需要手動設置閃爍和重定向嗎?
有沒有辦法檢查它是否被拒絕,然後自動執行404?
我想使用CakePHP的isAuthorized
功能,但是隻要訪問應該被拒絕,用戶就會返回到他來自的頁面。CakePHP isAuthorized false返回到同一頁面,而不是重定向到一個URL
目前爲止我能找到的最好的方法是使用authError-> 'You are denied'
,它甚至不會閃現。
手動設置return false;
行isAuthorized
函數之前需要手動設置閃爍和重定向嗎?
有沒有辦法檢查它是否被拒絕,然後自動執行404?
聽起來像你需要配置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);
}
還可以查看[例外](http://book.cakephp.org/2.0/en/development/exceptions.html)(即如果您需要404,則爲'NotFoundException')和['AuthComponent :: $ authorizedRedirect'] (http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html#AuthComponent::$unauthorizedRedirect)在CakePHP> = 2.3 – ndm
請隨時提您確切的CakePHP版本。 – ndm