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

php中文网
发布: 2016-08-08 09:31:32
原创
1244人浏览过
一、Apache + PHP制作自定义404页面的方法。

首先处理文件真的不存在的情况,方法是利用apache的.htaccess定义,

方法是新建.htaccess,在.htaccess最开头加上:ErrorDocument 404 /404.php (/404.php是自定义404页面)。

二、在yii框架下设置

Insou AI
Insou AI

Insou AI 是一款强大的人工智能助手,旨在帮助你轻松创建引人入胜的内容和令人印象深刻的演示。

Insou AI 69
查看详情 Insou AI

当请求的页面不存在时,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>  
登录后复制

以上就介绍了PHP项目统一设置404页面(包括yii框架下),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号