May 29, 2015 · 404 DNS

你用对“404”了吗?

Google I/O 2015大会广大网友热情高涨,各大门户评论板块颇显热闹各路大神纷纷留言。盖因Google无法访问,难免会引起群众的抱怨,故不时出现“404 not found....”等类似评论。那么,你了解什么是"404"吗?你用对“404”了吗?

什么是404 not found
404 not found一般指HTTP 404 错误意味着链接指向的网页不存在,即原始网页的URL失效,服务器返回HTTP 404状态码,浏览器在接收404代码后显示404页面用以告知用户所请求的页面不存在。

什么是HTTP状态码
简单点说就是服务器对客户端发出的请求的处理结果,更加详细的说明清查阅维基百科HTTP状态码

了解访问网站所经历的过程 http_request

当客户端访问网站时,如果服务器正常接收到客户端的请求会返回一个HTTP状态码。请求正确服务器返回200系列状态码;请求错误将会返回400系列状态码,其中404 Not Found表示无法找到请求的页面。

理解网站访问流程之后我们再来分析不难得出以下结论

1.限制访问某网站可在上图中2.3.4阶段上进行阻断;
2.无论在2.3.4中哪个阶段进行阻断,客户端均无法收到服务器返回的状态码(此处忽略host以及DNS缓存问题);
3.客户端没有接收到404状态码,浏览器将不会显示404页面

身处大局域网的我们,对于Google/facebook/twitter之流我们连看到“404”的机会也没有,而那些“404”评论现在看来并不严谨。当然不严谨并不代表是错的,也不妨碍使用“404”来吐槽。“404”作为一个互联网词汇本身定义较为模糊,我们对它赋予的更多的是一种态度。

404=愤怒
404=郁闷
404=不满
404=嘲笑
404=.....

每个人都有都可以为它赋予独特的意义。

关联阅读:Android M Developer Preview, DNS解析过程