PHP项目统一设置404页面(包括yii框架下)
程序员文章站
2022-05-19 15:40:20
...
一、Apache + PHP制作自定义404页面的方法。
然后在SiteController.php中添加,error控制器:
最后在view/site/ 下添加error.php模板文件:
首先处理文件真的不存在的情况,方法是利用Apache的.htaccess定义,
方法是新建.htaccess,在.htaccess最开头加上:ErrorDocument 404 /404.php (/404.php是自定义404页面)。
二、在yii框架下设置
当请求的页面不存在时,yii会抛出一个CHttpException的异常,异常code为404,那么yii中是怎么处理该类异常的呢,有下面三种方法:
1、啥也不用做,yii会自己处理
当抛出该类异常时,yii会默认去渲染framework/view/下的 errorxxx.php(error404.php)模板文件
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中添加,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); } }
最后在view/site/ 下添加error.php模板文件:
pageTitle=Yii::app()->name . ' - Error'; $this->breadcrumbs=array( 'Error', ); ?>Error
以上就介绍了PHP项目统一设置404页面(包括yii框架下),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。