私は、www.cakephp.orgウェブサイトのaclチュートリアルに従ってセキュリティを実装しました。私は、ログインしていないユーザーをログインページにリダイレクトするコード行を特定しようとしています。テストとして、app_controller.phpのbeforefilter()関数からいくつかの行をコメントアウトしました。ログインページへのリダイレクトを行っている行を特定しようとしています
function beforeFilter() {
//Configure AuthComponent
$this->Auth->authorize = 'actions';
$this->Auth->actionPath = 'controllers/';
// $this->Auth->loginAction = array('controller' => 'users', 'action' => 'login');
// $this->Auth->logoutRedirect = array('controller' => 'users', 'action' => 'login');
// $this->Auth->loginRedirect = array('controller' => 'alerts', 'action' => 'home');
// $this->Auth->loginRedirect = array('controller' => 'schedules', 'action' => 'index');
$this->Auth->allowedActions = array('display');
}
しかし、まだログインページにリダイレクトされています。
cakephpサイトがプロキシサーバー経由で提供されているため、相対URL参照を使用する必要がありますが、ログインリダイレクトは絶対参照を使用しているためです。
私は最初に何かを出力しようとしました。リダイレクトは "ヘッダを送信できません、既に出力が開始されました"というエラーを引き起こします(Cakeが出力バッファを使用しているかどうか、おそらくヘッダーを送信していますか?)。 – Kemo