404页面设置原来还有这么多事儿
一直以来太多人在设置404页面上都认为再简便不过了,但实际上有太多的公司没有合理、正确的设置404页面。那设置404页面到底都有哪些规定呢?
先补充说明一下什么是404页面?在阅览器对网页进行访问时,当网页发生相应错误或不存在时,会提示404状态码,页面会出现“Not Found”错误信息的提示。那提示信息的也是一个页面,既称为404页面。
首先是否需要设置404页面,需要先决议哪一类页面返回的是404状态码,这点我们可以通过chinaz的http状态码查询工具进行查询(查询地址:http://tool.chinaz.com/pagestatus/),如下图:
那对应返回的页面,就是我们需要进行设置的。当我们没有对该页面进行设置的时候,服务器正常返回的页面如下图(之一):
那这不是正常返回404页面了吗?状态码也是404,为啥还要设置呢?怎么设置才算正确的呢?
第一:当用户访问了错误的页面,会返回如上图的404页面,但没有任何返回我们原网站的链接,会导致用户的流失;第二:状态码设置不正确也会导致搜索引擎误认为该页面是可以正常访问的,会导致搜索引擎爬虫抓取到大批的空页面大概重复页面。
如下是几种经常方便出错的栗子:
一、不存在的页面返回了200的结局:
如下图,我的检查结局,看图中的这个URL就知道这个URL是不存在的。但查询状态码还是返回200,这样会导致爬虫大批抓取这种页面,并造成太多的无效页面,甚至是垃圾、重复页面。对网站的影响是很大的。
二、跳转的404页面
正常的404页面返回结局是这样的:当你访问了错误页面,URL是不会发生变化的,而网页会直接出现我们设置好的404页面。如下图的流程。
访问正常的URL地址:http://www.hqwx.com/record/?type=lesson&course_id=375。我们把后面的375改成37512312321232131。然后进行访问发现如下结局:
发现我们设置好的404页面确实是出来了,但url发生了跳转。那我们看下这个跳转的url是什么状态码。
返回状态吗不是404,那爬虫岂不是就理解错了!302是个临时跳转状态码。
三、未正确设置404页面的情况
如上图,访问的URL没变,但404页面是这样的。用户看到了 或许会不明白是什么意思,同时,没有返回网站的链接地址。也会导致用户的流失。但爬虫是没问题的。