首页 >> SEO优化 >> HTTP状态码:301,302,404,500

HTTP状态码:301,302,404,500

Catagory:SEO优化, Date:2011年06月2日,Author: 工业品营销-贾定强

相信你对于http状态码并不陌生吧。在浏览器中可以通过使用插件来查看这些HTTP状态码。其中之一是LiveHTTPHeaders(http://livehttpheaders.mozdev.org/),可以用在Firefox中。对Internet Explorer,则可以使用ieHTTPHeaders(http://www.blunck.se/iehttpheaders/iehttpheaders. html) 。

常见的http状态码包括200,301,302,404,500等。下面分别介绍一下。

200是最常见的http状态码,它的含义很简单,就是成功了。一个正常网页返回的状态码就是200.

302是临时性重定向到意思,就是一个网页临时被搬到了另一个网页上。实际应用中,应该把它分成两种:内部临时的重定向,即从域A的一个页面到域A的另一个页面;外部临时的重定向,从域A的一个页面到域B的一个页面。浏览器在解释302重定向的时候总是遵循其定义(无论对于内部和外部都如此)。然而,目前大部分搜索引擎(包括Google和Yahoo!)只把它作为内部的302重定向来使用。这样,对一个内部的302重定向,搜索引擎不会缓存重定向的结果,并且将域A继续列于SERP中。这与定义是一致的。外部302重定向则复杂一些。Google的Matt Cuffs宣称,超过99%的时间里,Google将列出目标结果的结果,即域B而不是域A。这是与标准相背离的,而Google这么做是为了减轻“302劫持”的攻击。“302劫持(hijacking)”是指,利用域A上的一个页面引用有高质量更新内容的域B。这样,基于从域B“偷来”的更新内容,这个页面会有较好的排名。

404是错误页面返回的状态码,表示页面不存在或被删除。对静态网站,404错误是自动产生的,只要删除了文件就会产生。然而,许多动态网站根本没有404的概念,因为它的实现需要额外的努力。典型情况是当一个产品从数据库中被删除时,产品页面不再被网站的其他页面所链接。然而,这个产品页面可能由于被外部网站页面链接而获得了链接价值,并仍然被搜索引擎索引。最糟糕的事情就是返回一个带200状态代码的空页面,这经常发生在当某个产品ID在数据库中不再存在时。随着时间推移,结果就是一些空页面被搜索引擎索引,这将导致重复内容问题。其实应该返回404状态代码,再附带一个友好的错误消息。搜索引擎不会索引导致404错误的页面。

500表示服务器正在维护。如果服务器在维护的时候,你没有使用500状态码,那么服务器会产生404状态码,导致原来收录的内容有可能被搜索引擎删除。返回500,即表示告诉搜索引擎,我的服务器正在维护,让它等一段时间再来访问。

301是seo中最重要的http状态码,很多地方都会用到301重定向。这是一种永久性的重定性,采用了301重定向,搜索引擎会删除原页面,收录重定向后的页面,并将原页面的权重转移到新的页面。常见的301重定向有两种方式,即:

  1. .htaccess: RewriteRuie ^foo\.php$ /bar.php [R=30I,L]
  2. php代码: header(‘HTTP/1.1 301 Moved Permanently’); header(‘Location: http://jiadingqiang.com/bar.php’);

301重定向应用非常广泛,下面举几个代码示例说明一下。

//1. redirect requests to index.php and index.html to the root
function fix_index_url()
{
// if the request is for index.php we redirect to ./
if (preg_match(‘#(.*)index\.(html|php)$#’, $_SERVER[‘REQUEST_URI’], $captures))
{
// perform a 301 redirect to the new URL
header(‘HTTP/1.1 301 Moved Permanently’);
header(‘Location: ‘ . $captures[1]);
}
}

//2. redirects to proper URL if not already there
function fix_category_product_url()
{
// obtain the proper URL of the current category/product page
$proper_url = get_proper_category_product_url();

// 301 redirect to the proper URL if necessary
if (SITE_DOMAIN . $_SERVER[‘REQUEST_URI’] != $proper_url)
{
header(‘HTTP/1.1 301 Moved Permanently’);
header(‘Location: ‘ . $proper_url);
exit();
}
}

好了,我的分享就到这里了。如果你对本文有什么建议或意见,欢迎留言交流。

来源:工业品营销,原文地址:http://www.jiadingqiang.com/2159.html,欢迎分享本文,转载请保留出处!

Comments: 13 Responses to “ HTTP状态码:301,302,404,500 ”
六月 18th, 2011

这个学习知识啊

[回复]

六月 14th, 2011

看了半天没明白。

[回复]

六月 8th, 2011

看了半天 没明白

[回复]

六月 8th, 2011
阿里巴巴团 说 Said:

很好,学习下

[回复]

六月 7th, 2011
苗木 说 Said:

局外人 没看太懂

[回复]

六月 7th, 2011
小说排行榜 说 Said:

博主你的模版我很喜欢

[回复]

六月 7th, 2011

很不错的啊 学习了呀

[回复]

六月 6th, 2011

呵呵,书上看了一些,再次学习一次

[回复]

六月 4th, 2011
seo优化 说 Said:

兄弟的空间访问速度有点慢。

[回复]

六月 3rd, 2011
下午茶 说 Said:

304是什么意思呢?

[回复]

小强 回复:

网上随便一搜就知道了,不常见的。

[回复]

六月 3rd, 2011
中药材 说 Said:

希望看到你更多的好文章

[回复]

六月 2nd, 2011
长沙二手房 说 Said:

来学习了。。

[回复]

你也来说几句:

名字*必填
邮箱*必填,不会被公开
网站
QQ群交流
最近文章
文章归档
  • 2017 (3)
  • 2016 (30)
  • 2015 (63)
  • 2014 (21)
  • 2013 (38)
  • 2012 (25)
  • 2011 (67)
  • 2010 (268)
  • 2009 (19)