PHP项目统一设置404页面(包括yii框架下)

一、Apache + PHP制作自定义404页面的方法。

首先处理文件真的不存在的情况,方法是利用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模板文件:

<?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>  
来源: http://myfetish.cn/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值