404错误页面重定向 PHP使用HEADER头发送状态(Status)信息(一)

404错误页面重定向 PHP使用HEADER头发送状态(Status)信息

看了篇404页面和SEO关系的文章,发现SEO真是个细活,和搜索引擎打交道还真是要多注意很多细节啊。这里就和大家交流一下关于404页面和自 定义404页面(php+apache服务器),以及PHP使用HEADER头发送404 HTTP等状态(Status)信息方面的东西。

什么是404页面404 Not found )?

404 页面是访问者浏览了网站中不存在的网页时看到的页面(比如在地址栏输入了错误的网址,或某个网页已经删除,但 是用户点击了还存在的这个网页的链接,服务器就会返回包含 404 Not found 信息的404页面)。404页面中,网络服务器会返回 404 HTTP 状态代码,表明该网页未找到,如“HTTP 404 – 找不到文件”类似的信息。服务器返回的标准的404 页面可能会因不同的互联网服务提供商而异,不过一般标准的404网页都不会向访问者提供有用的信息,所以用户可能会直接关闭404页面,离开网站。下图分 别是标准的404页面,和电脑安装了google工具栏后的404页面:

php_404_1
php_404_2

显然上面的404页面不够友好,也流失了大量的访客资源,同时对搜索引擎优化(SEO)也不够友好。因此我们可以使用自定义404页面来实现更好的 效果。

自定义404页面

自定义404页面的目的是告诉浏览者(搜索引擎)其所请求的页面不存在或链接错误,同时引导用户使用网站其他页 面而不是关闭窗口离开。很多开源系统包括CMS、Blog系统等不提供404页面或提供的404页面并未达到SEO的要求,使网站的权威性大大下降。

也有人将404页面设置Meta Refresh自动跳转至首页或其他页面,请注意不要将404错误直接跳转到 网站首页或其他页面,这将可能导致这个页面不被搜索引擎收录。

如何自定义404页面才符合SEO要求?

搜索引擎通过HTTP状态码来识别网页的状态。当搜索引擎获得了一个错误链接时,网站应该返回404状态码,告诉搜索引擎放弃对该链接的索引。而如 果返回200或302状态码,搜索引擎就会为该链接建立索引,这导致大量不同的链接地址指向了相同的网页内容。搜索引擎将认为你的网站存在大量的复制网 页,导致网站信任度降低,被搜索引擎惩罚。很多网站存在这个问题:自定义的404页面返回的是200或302状态码而不是404 HTTP状态码。

下面以PHP+Apache服务器说明正确建立自定义404页面的 方法:

  • 在网站根目录下建立一个简单的php 404页面,命名 404.php
  • 在网站根目录下面建立一个.htaccess 文件(linux服务器下通过设置htaccess来实现404转向,windows服务器则用IIS),文件中加入代码: ErrorDocument 404 /404.php
  • 注意/404.php 前面不要带主域名,也就是不要用绝对地址,否则返回的状态码不是404,而是302或200状态码。

然后我们看看在404.php页面里应该加入哪些代码:

  • 首先在代码最前面加上<?php header(“HTTP/1.0 404 Not Found”  ?> 。这个方法是向客户端发送一个自然的HTTP头。这个方法要在没有向客户端发送任何信息之前使用,因此加在404.php的文件头最好。
  • 然后在该404.php页面上加上任何你想显示的网页内容,比如加上一个google搜索框,或者设置一个到首页的超级链接,引导访问者 重新点击返回网站等友好设置。请注意这里的不管什么超级链接都要用绝对地址,不能用相对地址。原因和那简单:404错误页面有可能在网站目录的不同深度处 出现。

php_404_3

另外,自定义404页面里还可以使用google提供的这个工具: 增 强 404 窗口小部件,在404页面嵌入搜索框。

下一节我们看看一种更为常见的网页不存在现象,如何自定义从PHP数据库中读取不存在数据出现的404页面。以及PHP HEADER 发送各种HTTP状态码的原理:404错误页面重定向 PHP使用HEADER头发送状态(Status)信息(二)

14 thoughts on “404错误页面重定向 PHP使用HEADER头发送状态(Status)信息(一)

  1. Pingback: Offshore Company Formation

  2. Pingback: 바카라사이트

  3. Pingback: click to view listing >

  4. Pingback: รีไฟแนนซ์รถยนต์ที่ยังผ่อนไม่หมด

  5. Pingback: scam

  6. Pingback: 바카라사이트

  7. Pingback: xe88 apk

  8. Pingback: i99bet

  9. Pingback: ขายชุดไทย

  10. Pingback: đăng ký fun88

  11. Pingback: satta king

  12. Pingback: i99 casino

  13. Pingback: cross borders all weather

Leave a Reply