YII, как обрабатывать пользовательские страницы ошибок 404 вместе с другими страницами ошибок

Я хочу отобразить страницу ошибки 404, для которой я сделал файл error404.php в моей защищенной папке / view / system.

По умолчанию у меня есть Sitecontroller, и он содержал функцию действия ошибки, как показано ниже

public function actionError()
{
    if($error=Yii::app()->errorHandler->error)
    {

        if(Yii::app()->request->isAjaxRequest)
            echo $error['message'];
        else
            $this->render('error', $error);
    }
}

внутри основного файла конфигурации это определяется как

    'errorHandler'=>array(
        // use 'site/error' action to display errors
        'errorAction'=>'site/error',
    ),

Моя проблема заключается в том, что мне нужно настроить только страницу 404, остальная часть ошибки мне нужна, чтобы обработать то, как она обрабатывается функцией ошибок sitecontroller. Но я не мог найти способ сделать это. Если предположить, что я удалил «errorAction» = «сайт / ошибка», из главной конфигурации, то он показывает ошибку 404, вызвав

        throw new CHttpException(404, 'Page not found');

но при этом я могу видеть только страницу без макета, а другие пользовательские ошибки обрабатываются так же, как 404, а они - нет. Я прочитал руководство много раз, но я все еще не могу решить его.

Ответы на вопрос(4)

Ваш ответ на вопрос