ホームページ >バックエンド開発 >PHPチュートリアル >PHP プロジェクトは一律 404 ページ (yii フレームワーク下を含む) を設定します

PHP プロジェクトは一律 404 ページ (yii フレームワーク下を含む) を設定します

WBOY
WBOYオリジナル
2016-08-08 09:31:321116ブラウズ
1. Apache + PHP でカスタム 404 ページを作成する方法。

まず、ファイルが実際に存在しない状況に対処します。その方法は、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',  
        ),  

次に、「SiteController.php に追加」で、エラー コントローラー:
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);  
        }  
    }  

最後に、error.php テンプレート ファイルを view/site/ に追加します:
<?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 チュートリアルに興味のある友人の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。