404页面三问:你真的懂「404页面」?

2 评论 20863 浏览 62 收藏 9 分钟

404页面是网页设计中必不可少的一部分,良好的404页面,能够提供良好的用户体验,让你的产品更友好些。

404页面是什么?定制404页面的意义是什么?如何定制404页面?要谈这些,就要先谈谈「404错误」。

1.404错误(HTTP 404)

百度百科:是WWW网站访问比较经常出现的错误。404页面就是当用户输入了错误的链接时,返回的页面。HTTP 404错误意味着链接指向的网页不存在,即原始网页的URL失效,这种情况经常会发生,很难避免。

维基百科:The HTTP 404, 404 Not Found and 404 (pronounced “four oh four”) error message is a Hypertext Transfer Protocol (HTTP)standard response code, in computer network communications, to indicate that the client was able to communicate with a given server, but the server could not find what was requested.

RFC7231:The 404(Not Found)status code indicates that the origin server did not find a current representation for the target resource or is not willing to disclose that one exists.  A 404 status code does not indicate whether this lack of representation is temporary or permanent; the 410 (Gone) status code is preferred over 404 if the origin server knows, presumably through some configurable means, that the condition is likely to be permanent.

所以,404错误就是:一个HTTP标准响应码——这种响应码表示用户可以正常访问服务器, 但服务器无法找到用户请求的内容或故意地不找到此内容。

2.为什么会出现404错误?

其实上文定义已解释了这个问题——404错误表示用户可以正常访问服务器,但服务器无法找到用户请求的内容。

但更深层的原因是什么?

经过一些调查并请教强哥后,发现是这样的: 下图为一个上网模型,即一个人上网,需要服务器处理,并调用数据库中的数据,然后通过网络传给这个人使用的设备。而在出现404错误时,用户上网请求的所有内容在服务器、数据库中均未找到——一般是一个页面的所有内容均未找到(包括该页面的前后端代码与所有数据,如果只有部分服务器中的数据缺失,那网站前端页面不显示这些数据即可,还是有页面展示),故服务器返回404响应码。

注意:这里是在服务器和数据库中没有找到对应内容,而不是服务器异常。如果是服务器异常,那就不是返回404,而是其他的响应码。比如服务器不存在,那就是DNS error,而不是404 error,具体如下方维基百科的内容。

维基百科:404 errors should not be confused with DNS errors, which appear when the given URL refers to a server name that does not exist. A 404 error indicates that the server itself was found, but that the server was not able to retrieve the requested page.

更表面上,404错误一般表现为用户请求的内容被删除/移动。比如一个博客网站,删除了某篇文章对应的页面,此时用户仍使用原URL进入,往往就会进入404页面;如果博客网站把某篇文章页面移动到其他地方(往往对应着URL路径变化),而用户此时仍使用原URL进入,也会进入404页面。

当然,如果用户故意输入错误的URL,也会被网站识别为上述原因。尽管此时网站并未删除/移动那些内容,但在结果上是一样的——这些内容都不存在。

还有一种原因:网站可能会有意地将某些页面伪装成404页面,已达到某些不那么可告人的目的……

3.定制404页面的意义是什么?

在定制404页面之前,要先明白其意义所在。

404页面也是产品的一部分,因此可以参考《用户体验要素》的战略层——产品目标、用户需求。404页面的意义,就在这两方面。

3.1产品目标

a)SEO

很多死链(无法访问的链接)的原因是404错误,而不处理死链,往往会招来搜索引擎处罚。SEO与用户体验是相通的,如果网站没有定制404页面,往往被认为在用户体验上不够用心,搜索引擎也会这么认为。

另外,如果服务器设置错误,就会导致本应返回404的页面返回了200或者302, 这会导致多个不同的URL对应的内容相同,这也会招来搜索引擎的处罚。

b)对产品宣传、转化率等

404错误是一种常见错误,利用这种错误,定制404页面,并在404页面中添加一些对产品宣传、提升产品转化率的内容是完全可行的,比如下图。

3)其他

有些公司会利用SEO幽默一把,比如在私募行业中著名的金斧子:

有的公司会体现其自带的某种风格,比如知乎这样的:

有的公司则会在公益方面有所表现,比如腾讯,对于这样的公司,给点个赞!

3.2用户需求

这里的用户需求比较简单,主要分为两点:

a)知道错误原因

这是正常人都会有的反应——进入了一个相对不常见的404页面,why?

对于这样的用户需求,很容易就能满足,比如像下图这样:

b)知道如何处理错误

这就涉及到交互设计原则中的<人性化帮助>原则。

满足这个需求也很简单,一般来说,给用户返回上一页、返回首页的链接即可,有的网站会自动帮助用户返回首页,有的网站会提供更多内容,这可以视具体情况而定。比如像天猫这样:

4.如何定制404页面?

上方第三点其实就包括了需求分析、需求决策,接下来要做的,就是根据实际情况,进行需求扩展、需求筛选、需求设计……

总结起来,大致如下图。

由于404页面的需求比较简单,而且并距离网站的核心业务较远,所以往往不需要考虑太多。当然,如果有兴趣,也可以认真对待。

 

本文由 @GetiDoer 原创发布于人人都是产品经理。未经许可,禁止转载。

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 不涉及数据库的纯静态网站也可以在访问不到内容后跳转404页面哦 ➡

    来自安徽 回复
    1. soga,多谢提醒

      来自广东 回复