一个网站上的404 错误是服务器在请求资源找不到的时候发生的。一个设计合理的404错误页面不仅仅是网站完整性的一部分,还是网站的可用性的重要体现。好的404错误页面设计可以大大的增强网站的用户体验。
1. 它应该看起来还是你的网站
如果你不明确的告诉你的服务器如何处理404错误,它将默认提供一个单调而普通的错误页面。比如在一个白色的页面上显示“没找到 – 请求的URL不能被找到”云云。对用户来说,这是毫无帮助的和相当痛苦的。一个404页面应该开起来像个错误页面,但是它也应该看起来仍然是你的网站。如果你在是用一个CMS,一般来说这已经为你处理好了。如果你使用一个静态网站,你可以通过你的.htaccess(Apache服务器)文件指定一个404模板。
2. 道歉
没有人会主动访问你的404页面。最常见的是他们来自于你的网站或外部网站的一个坏链接。也许这个页面会让用户很不高兴,所以道歉是一个可以让他们皱着的眉头舒缓的绝佳方式。这也可以让用户减少对你的网站的抱怨。
3. 搜索
可能用户寻找的页面依然存在,只是URL被改变了或者它的URL在某个地方被拼错了。由于你的网站应该已经拥有搜索功能了,这是一个非常重要的提供搜索框的好机会。这可以让用户很方便的搜索他们试图链接的内容并让他们自己找到正确的URL。
4. 给用户有用的链接
或许他们链接进来的页面不是坏掉了,而是已经不存在了。除了搜索,你还可以想用户展示一些他们可能觉得有用的链接。或许链接到首页,或者是归档页面,或者是其它你已知的通常会访问或者在你的网站上很热门的页面?
5. 报告错误或联系的方式
可能一个用户在遇到一个404页面的时候会有某种非常强烈的情绪。他们可能会很焦虑、担心,或者他们会被气疯了……让用户发泄是个不错的主意,因为你不可能成为他们的出气筒,所以一个联系表单可能就会凑效。当然,这不仅仅对他们有好处,对你也有好处,因为你可以找到问题然后去修正它或者预防它再次发生。
6. 自动报告
让用户通过联系表单帮你报告错误是很不错的,但是只有很小比例的用户才可能会这样做。一个替代的方法是让你的404页面自动的将错误报告给你。有很多种方法可以实现。一个快速而且简洁的方式是将你的错误页面做成PHP文件,然后使用mail函数发送一封包括该URL的邮件给你。
mail("chriscoyier@gmail.com", "404 report", 一个网站上的404 错误是服务器在请求资源找不到的时候发生的。一个设计合理的404错误页面不仅仅是网站完整性的一部分,还是网站的可用性的重要体现。好的404错误页面设计可以大大的增强网站的用户体验。
1. 它应该看起来还是你的网站
如果你不明确的告诉你的服务器如何处理404错误,它将默认提供一个单调而普通的错误页面。比如在一个白色的页面上显示“没找到 – 请求的URL不能被找到”云云。对用户来说,这是毫无帮助的和相当痛苦的。一个404页面应该开起来像个错误页面,但是它也应该看起来仍然是你的网站。如果你在是用一个CMS,一般来说这已经为你处理好了。如果你使用一个静态网站,你可以通过你的.htaccess(Apache服务器)文件指定一个404模板。
2. 道歉
没有人会主动访问你的404页面。最常见的是他们来自于你的网站或外部网站的一个坏链接。也许这个页面会让用户很不高兴,所以道歉是一个可以让他们皱着的眉头舒缓的绝佳方式。这也可以让用户减少对你的网站的抱怨。
3. 搜索
可能用户寻找的页面依然存在,只是URL被改变了或者它的URL在某个地方被拼错了。由于你的网站应该已经拥有搜索功能了,这是一个非常重要的提供搜索框的好机会。这可以让用户很方便的搜索他们试图链接的内容并让他们自己找到正确的URL。
4. 给用户有用的链接
或许他们链接进来的页面不是坏掉了,而是已经不存在了。除了搜索,你还可以想用户展示一些他们可能觉得有用的链接。或许链接到首页,或者是归档页面,或者是其它你已知的通常会访问或者在你的网站上很热门的页面?
5. 报告错误或联系的方式
可能一个用户在遇到一个404页面的时候会有某种非常强烈的情绪。他们可能会很焦虑、担心,或者他们会被气疯了……让用户发泄是个不错的主意,因为你不可能成为他们的出气筒,所以一个联系表单可能就会凑效。当然,这不仅仅对他们有好处,对你也有好处,因为你可以找到问题然后去修正它或者预防它再次发生。
6. 自动报告
让用户通过联系表单帮你报告错误是很不错的,但是只有很小比例的用户才可能会这样做。一个替代的方法是让你的404页面自动的将错误报告给你。有很多种方法可以实现。一个快速而且简洁的方式是将你的错误页面做成PHP文件,然后使用mail函数发送一封包括该URL的邮件给你。
___FCKpd___0
注意: 上面的代码可能对于小网站是合适的,但是并不适合大流量的网站。在这种情况下,将错误写入一个数据库可能更加有效。
7. 幽默
即便是严肃的网站也可以在404也页面上添加一些小幽默。这显然是一个放松和做一些有趣的事情的好机会。
8. 转向?
事实上,我对此种做法持观望态度,但是自动的将404页面转向到其它页面是可行的。或许首页正显示一条关于这个错误的提示信息呢?或许一个包含来自于该页面的关键词的搜索页面被传递?
9. 文件大小
你可能会惊讶于你的服务器序号处理如此多的错误活动。不久前的意见令我惊讶的是有那么多的对“怪异”文件的请求,比如在陌生的子目录请求或寻找并不存在的随机文件。当这些内容不出现的时候,服务器就会加载你的404页面。不必说,为所有的这些请求发送一个完整的页面会增加大量的带宽。最好的方法是与这些不好的请求做斗争,但是你也应该关注一下404页面的总大小并减小它——如果带宽是件很重要的事情的话,在错误请求很多的时候,404页面显然会浪费很多流量。
SERVER['REQUEST_URI'], "From: chriscoyier@gmail.comn")
?>
注意: 上面的代码可能对于小网站是合适的,但是并不适合大流量的网站。在这种情况下,将错误写入一个数据库可能更加有效。
7. 幽默
即便是严肃的网站也可以在404也页面上添加一些小幽默。这显然是一个放松和做一些有趣的事情的好机会。
8. 转向?
事实上,我对此种做法持观望态度,但是自动的将404页面转向到其它页面是可行的。或许首页正显示一条关于这个错误的提示信息呢?或许一个包含来自于该页面的关键词的搜索页面被传递?
9. 文件大小
你可能会惊讶于你的服务器序号处理如此多的错误活动。不久前的意见令我惊讶的是有那么多的对“怪异”文件的请求,比如在陌生的子目录请求或寻找并不存在的随机文件。当这些内容不出现的时候,服务器就会加载你的404页面。不必说,为所有的这些请求发送一个完整的页面会增加大量的带宽。最好的方法是与这些不好的请求做斗争,但是你也应该关注一下404页面的总大小并减小它——如果带宽是件很重要的事情的话,在错误请求很多的时候,404页面显然会浪费很多流量。