まず、ファイルが実際に存在しない状況に対処します。その方法は、Apache の .htaccess 定義を使用することです。
方法は、新しい .htaccess を作成し、次のように追加します。 ErrorDocument 404 /404.php (/) 404.php はカスタム 404 ページです)。
2. yii フレームワークの下で設定します
要求されたページが存在しない場合、yii は例外コード 404 で CHttpException 例外をスローします。 では、yii はこのタイプの例外をどのように処理するのでしょうか。次の 3 つの方法があります。
1. 何もしないでください。yii が自動的に処理します
このタイプの例外がスローされると、yii はデフォルトで、errorxxx.php (error404.php) テンプレート ファイルを Framework/view/ の下にレンダリングします
2. protected /views/system の下に新しい errorxxx.php を作成します。Yii がファイルをレンダリングします
3. 例外ハンドラーを設定します
設定ファイル main.php に次の設定を追加し、例外処理コントローラーを site/error に設定します
'errorHandler'=>array( // use 'site/error' action to display errors 'errorAction'=>'site/error', ),
public function actionError() { if($error=Yii::app()->errorHandler->error) {print_r($error); if(Yii::app()->request->isAjaxRequest) echo $error['message']; else $this->render('error', $error); } }
<?php $this->pageTitle=Yii::app()->name . ' - Error'; $this->breadcrumbs=array( 'Error', ); ?> <h2>Error <?php echo $code; ?></h2> <div class="error"> <?php echo CHtml::encode($message); ?> </div>
上記は、PHP プロジェクト (Yii フレームワーク下を含む) の 404 ページの統一設定について、内容の側面も含めて紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。