YII, jak obsługiwać niestandardową stronę błędu 404 wraz z innymi stronami błędów
Chcę wyświetlić stronę błędu 404, ponieważ utworzyłem plik error404.php w moim folderze protected / view / system.
Domyślnie mam Sitecontroller i zawiera on funkcję działania błędu jak poniżej
public function actionError()
{
if($error=Yii::app()->errorHandler->error)
{
if(Yii::app()->request->isAjaxRequest)
echo $error['message'];
else
$this->render('error', $error);
}
}
w głównym pliku konfiguracyjnym jest zdefiniowany jako
'errorHandler'=>array(
// use 'site/error' action to display errors
'errorAction'=>'site/error',
),
mój problem polega na tym, że muszę dostosować stronę tylko do 404, resztę błędu muszę obsłużyć w sposób, w jaki jest obsługiwany przez funkcję błędu kontrolera sitecontrolera. Ale nie mogłem znaleźć sposobu, aby to zrobić. Jeśli przypuszczam, że usunęłam 'errorAction' => 'site / error', z głównego pliku konfiguracyjnego wyświetli błąd 404 wywołując
throw new CHttpException(404, 'Page not found');
ale to, że widzę tylko stronę bez układu, również inne błędy niestandardowe są traktowane tak samo jak 404, gdy nie są. Czytam podręcznik wiele razy, ale wciąż nie mogę go rozwiązać.