2013-12-24 08:14:01
来 源
kejihao
Apache
本文介绍IIS/Apache服务器中如何设置404页面(在PHP/ASP中设置),希望对于初学Apache服务器相关的朋友有帮助,更多Apache安装、配置、报错处理等资源请本站内搜索。

1、Apache服务器404页面的设置方法

在.htaccess 文件中加入代码:ErrorDocument 404 /Error.html,上传

建立一个简单的html 404页面命名 Error.html,编辑里面的内容,可以放入链接到首页等位置的超级链接方便访客浏览其他内容,放置google搜索框也是不错的选择。

把 Error.html放置在网站根目录即可。注意:

ASP,ASP.net和PHP的404页面(Error.html/asp/php)都一样,这样设置就OK。404错误应工作在服务器级而不是网页级。对定制使用动态页面如PHP脚本类型的404页时,必须确保在PHP执行前服务器已经顺利地送出“404”状态码,不然,一旦执行到了ISAPI级别,返回的状态码便只能是“200”或其他如“302”之类的重定向状态码了。

不要在自定义404错误页面上设置转向,重定向到网站主页或其他页面,否则可能会导致主页在搜索引擎中消失;

不要使用绝对URL(例如:http://www.abc.com/nofound.php形式),使用相对地址,尽管无效链接可能是多种形式的URL,但当发生404访问错误时,WEB服务器会自动将其转到自定义的当404错误页中。 如果使用绝对URL返回的状态码是“302”+“200”。

2、IIS环境下html/ASP.net/ASP/php的404页面设置

首先,修改 iis 服务器应用程序根目录的设置(确保你有相应的权限,如果你是虚拟主机,web.config文件一般IDC都帮你设置好了,到空间管理后台去设置一下就好了),打开 “web.config” 文件编辑,在其中加入如下内容(以asp为例,其他类似):

<configuration>

<system.web>

<customErrors mode=”On” defaultRedirect=”error.asp”>

<error statusCode=”404″ redirect=”notfound.asp” />

</customErrors>

</system.web>

</configuration>

此例中“error.asp”为系统默认的404页面,“notfound.asp”为自定义的404页面,使用时请修改相应文件名。

或者在IIS系统管理后台设置 asp动态页面的404错误页面(如404.asp):在IIS管理器中右键单击要管理的网站,打开“属性”中的“自定义错误信息”页为“404”设定相应的错误信息页即可。不过,此处在“消息类型”中一定要选择“URL”,而不要选择“文件”或“默认值”, 不然,将导致返回“200”状态码。如果你自定义的404页面是静态的(如404.html文件),则“消息类型”要选择“文件”或“默认值”,虽然404.html文件中没有输出404状态,但IIS执行后会自动输出404状态。

然后,在asp/asp.net自定义的404页面“404.asp”中加入:

<%

Response.Status = “404 Not Found”

%>

这样,便可以保证IIS能够正确地返回“404”状态码。

在php 自定义404页面的文件头部加入:

<?php

header("HTTP/1.1 404 Not Found");

?>

jsp也可以。

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。