« PR更新为3,游魂终于没交白卷[彩虹杯]找个人与我一起幻想:战斗 »
May 4 2008

自定义404页面与返回状态码

Tags: 自定义404页面  404错误   游魂 @ 11:28

    那天闲得发慌,于是给博客弄了个自定义404错误页面,本来想自己写的,可是一动手才发现:我的水平太次了,做出来的还没有默认的好看,晕死,去网上找吧,最后在皮皮的小屋找到了几个看着不错,就改了改,然后传上去了,于是就出错了:打开Google Sitemaps 发现无法确认,无法确认原因:我们检测到您的 404(找不到文件)出错页在标头中返回 200 (成功) 状态。在网上查了半天也不知道怎么弄,刚才找客服解决了(顺便说一下,z-dbs的态度超级好,超级有耐心)。想看的话,你可以试试这个页面:http://www.iblog2008.cn/abcdefg.html

什么是HTTP404错误?

    HTTP 404 错误意味着链接指向的网页不存在,即原始网页的URL失效,这种情况经常会发生,很难避免,比如说:网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问;当Web 服务器接到类似请求时,会返回一个404 状态码,告诉浏览器要请求的资源并不存在。但是,Web服务器默认的404错误页面,无论Apache还是IIS,均十分简陋、呆板且对用户不友好,无法给用户提供必要的信息以获取更多线索,无疑这会造成用户的流失。

自定义404错误页面返回的状态码

  • 404 : 请求的网页不存在(不排除日后该链接有效的可能性);
  • 410 : 请求的网页不存在(永久);
  • 200 : 服务器成功返回网页
  • 302 : 网址临时重定向(跳转)
  • 301 : 网址永久重定向

    需要说明的是,大部分搜索引擎将“404”与“410”状态同等对待,如Google。

    当搜索引擎在请求某个Url时得到“404”状态回应时,便会知道该网页在网站内不复存在,从而在索引数据库中将其删除,——当然,这个删除过程有可能需要很长时间——而当搜索引擎得到“200”状态回应时,则会认为该url是有效的,并将其回到到索引数据库中。

404错误页返回“200”状态码的后果

    如果网站的自定义404错误页面在url无效时不返回“404”状态码而代之以“200”,会发生什么情况呢?很明显,搜索引擎会认为这个“根本不存在的”网页在网站内是存在的,这会导致很多问题,影响网站的最终SEO效果。

    举例来说,比如说对“http://www.iblog2008.cn/abc.html”、“http://www.iblog2008.cn/abcdefg.html”这两个在哎!部落格内并不存在的地址而言,如果搜索引擎得到的回应状态码是“200”,那么,便会将其收录到索引数据库,这样的结果便是这两个不同的url具有完全相同的内容:自定义404错误页面的内容,这类重复文本的现象对许多搜索引擎而言都是大忌。尤其是考虑到网站中不可能只有这两个无效链接,毕竟在网站建设中,无论网站的内部链接还是外部链接,总会不可避免地出现许多比如说拼写错误的情况,类似的重复内容会更多。这样,对搜索引擎而言,特别是Google,不但很难获得理想的网站信任指数,也会大大降低Google对网站质量的评定

404错误页使用Meta Refresh带来的302问题

    常常看到许多网站的自定义404错误页面采取类似这样的形式:首先显示一段错误信息,然后,通过Meta Refresh将页面跳转到网站首页、网页地图或其他类似页。根据具体实现方式不同,这类404页面可能返回“200”状态码,也可能返回“302”,但不论哪种,从SEO的角度看,均不是一种合适的选择。

    对“200”状态的情况我们上面已经谈过,那么,当404页面返回“302”时,搜索引擎会怎么对待呢?从理论上说,对“302”错误,搜索引擎认为该网页是存在的,只不过临时改变了地址,仍然会索引收录该页,这样,同样会出现类似于“200”状态码时的重复文本问题;其次,以google为代表的主流搜索引擎对302重定向的适用范围要求越来越严格,这类不当使用302重定向的情况存在很大的风险。

    因此,尽量不要在404错误页中使用这类Meta Refresh方法。如果实现希望实现类似的功能,即让显示错误信息几(十)秒后跳转到首页或其他页面,可以考虑在404错误页中使用Java Script跳转。——Java Script对搜索引擎而言是无益同时也无害的。  

    而游魂则更加干脆,不跳转了,想看自己点吧,不想麻烦的,那就关了此页吧

确保自定义404错误页面能够返回“404”状态码

    在自定义404错误页面设置完毕后,一定要检查一下其是不是能够正确地返回“404”状态码。

    检查的方法也相当简单,游魂找到的一个地址:www.seobox.org/getheader.htm,输入一个网站内不存在网页的url,查看一下HTTP Header的返回情况,确信其返回的是“404”。

 PS:游魂的404页面间歇性失效(有时候你会看到默认的404页面)   下边的不要看:{ZHUAXIAb0e669dead8927b80ed9b956f0410b52Union}

喜欢本文? 欢迎订阅通过 通过Google订阅哎!部落格 通过Yahoo!订阅哎!部落格 通过抓虾订阅哎!部落格 通过鲜果订阅哎!部落格 通过有道订阅哎!部落格 通过哪吒订阅哎!部落格 通过QQ邮箱订阅哎!部落格 通过飞豆订阅哎!部落格 通过Pageflakes订阅哎!部落格 通过Netvibes订阅哎!部落格 通过Newsgotor订阅哎!部落格 通过Bloglines订阅哎!部落格 订阅哎!部落格,获取最新文章
  • 相关文章:
  • quote 6.ruixiang
  • 这个模板不错,上面那个阿拉伯的广告做得真好!
    游魂 于 2008-5-22 14:15:06 回复
    干掉他了,真会做
    Gravatar Icon
  • 2008-5-22 9:28:52 [Report Spam]  回复该留言