如何设置404页面,404错误页面自定义方法

如何设置404页面,404错误页面自定义方法,第1张

1、Apache服务器下设置404错竖虚误页面

为ApacheServer设置404错误页面的方法很简单,首先制作一个名为404.html/404.htm/404.php/404.asp/404.aspx的页面,视空间要求而定,再在.htaccess文件中加入如下内容即可(.htaccess文件一般linux空间会自带的,如果没有这个文件,自己可以用记事本写一个,命名为.htaccess,一定要记得去掉记事本文件的.txt哦。而windows虚拟空间是没有这个文件的,也不用上传这个文件):

404page

ErrorDocument404/notfound.php

(“notfound”是你给你的自定义错误页面的命名,你也可以改成Error.php等等)

注意:

(1).切记不要将404错误跳转到网站主页,比如使用了js脚蔽纤缓本或者metarefresh跳转技术。否则可能会导致主页在搜索引擎中消失或者不被收录.

(2).切记不要使用绝对URL如果使用绝对URL返回的状态码是“302”+“200”

2、IIS/ASP.net下设置404错误页面

静态404错误页面设置

(1)做个404页面,404.html或者404.htm,根据你的网站实际情况来。

(2)服务器/虚拟主机管理设置,根据自己的情况,选择“使用根目录下的404页面”,如果自己能找到“消息类型”选项,则要选择“文件”或者“默认值”,而不能选择“URL”。如果自己在主机提供商网站的管理后台找不到此“消息类型”选项请联系技术客服做出修改。这是具有决定性的一步。这步一定要 *** 作好,如果在后台找不到这个消息类型,就不要自己宏模设置,因为你设置之后肯定返回值是200,所以事先和客服联系下。

(3)上传404.htm到网站根目录,打开一次试试,看是否成功了。

包括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://www.outofmemory.cn/bake/11990155.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存