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页面的文件头部加入:
<?phpheader("HTTP/1.1 404 Not Found");
?>
jsp也可以。