Перенаправление CakePHP с кодом состояния 404

Я знаю, что для ошибок CakePHP существуют решения CakeError и AppError. Но мне нужно сделать перенаправление внутри контроллера.

В AppController существует:

function afterFilter() {
    if ($this->response->statusCode() == '404')
    {
        $this->redirect(array(
            'controller' => 'mycontroller',
            'action' => 'error', 404),404
        );
    }
}

Но это не создает код состояния 404. Он создает код 302. Я изменил код на этот:

$this->redirect('/mycontroller/error/404', 404);

Но результат тот же.

Я добавил это, это не сработало и устарело:

$this->header('http/1.0 404 not found');

Как я могу отправить код 404 при перенаправлении контроллера?

8
задан trante 29 June 2012 в 20:57
поделиться