当用户访问站点上不存在的页面时,服务器通常会返回404错误。如果网站管理员没有在服务器上设置自定义的404页,用户的浏览器将显示一个默认的错误页。很多运营良好的网站都会注重404页面的制作。404页面主要是引导用户访问网站上其他无法打开的内容,而不是让用户直接关闭窗口,这有助于增加浏览量,也有利于搜索引擎蜘蛛不因页面错误而停止对网站页面内容的爬行和抓取。设置404页面可以改善用户体验。

404页面的作用:用户在访问一个错误页面时会跳转到首页,或者出现一个提示的页面供用户选择进入网站的某些重要页面。
404页面的制作:
一、Apache服务器的404页面设置
1、在.htaccess 文件中加入代码: ErrorDocument 404 /Error.html
2、建立一个简单的html404页面命名 Error.html
3、把 Error.html放置在网站根目录
注意:不要将404错误直接转向到网站首页,这将导致首页不被收录;/Error.html 前面不要带主域名,否则返回的状态码是302或200状态码。
二、Windows服务器的404页面设置
打开IIS管理器–>点击要设置自定义404的网站的属性–>点击自定义错误选项–>选中404页–>选中并打开编辑属性–>设置成 URL –> URL 里填写“/err404.html”–>按确定退出再把做好的err404.html 页面上传到网站根目录下。此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。
三、.NET网站程序的404页面制作
打开程序根目录的 web.config文件进行编辑,在其中加入如下内容:
<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页面,使用时请修改相应文件名。 然后,在自定义的404页面notfound.asp中加入:
<% Response.Status = 404 Not Found %>
四、Nginx自己的404页面
Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?
看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。
server {
listen 80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
}
# 定义错误页面码,如果出现相应的错误页面码,转发到那里。
error_page 404 403 500 502 503 504 /404.html;
# 承接上面的location。
location = /404.html {
# 放错误页面的目录路径。
root /usr/share/nginx/html;
}
}