你的位置:首页 >> 资讯 >> 网站技术
 

巧用301重定向将404错误转化为网站外链

加入收藏 时间:2012年6月06日 浏览150次

这里说的404错误不是网站内部产生的404,而是由于外链中存在指向本站的错误url从而到了蜘蛛爬取错误,生成了404相应代码。我们要采取的就是将这些404页面301转向正常可访问的页面,使权重可以得到正常的传递。

在我们创作高质量内容时,总会遇到采集或者转载却不留版权信息的情况。更可恶的是,有些采集或转载的网站,为了防止自身网站的权重外流,在正常url中随机假如了一些字母和数字,导致蜘蛛在网站中顺着链接进行爬取时,生成了404相应。通过下图我们可以看到:

来自外链的404错误

这个404错误,就是由“链接到您网站网页的域”中url的错误导致的。再查看了webmaster tool中一系列404提示后,我们可以确定这个url不是由于书写错误导致,而是由对方站点故意生成干扰字母或数字造成的。

遇到这样的状况,我们可以采取的措施有:

1,像百度和谷歌举报(效果不好,同时有损rp)

2,装作没看见,什么事情都没有发生(心情会受影响)

3,合理运用技术,拿回属于自己的东西(也是本文撰写的内容)

301重定向404为外链的原理解释

这里我们需要用到的就是301重定向了。做seo的人都知道,301是永久重定向的意思,同时可以将旧url中的权重传递给新的url。

这里,我们可以将出现404错误的页面看作旧url,而将网站上存在的页面看作新url。拿上图中的url为例,就是:

将恶意指向不存在页面的url(产生了404错误):

http://www.***.com/rich-snippets.htmlgfq

通过301的方式,指向网站上原本存在的url:

http://www.***.com/rich-snippets.html

这样,蜘蛛在访问对方网站错误的url(上例中后缀gfq的url)后,会被重定向到正确的url页面。从而达到帮助我们回复权重传递的作用。

301重定向404为外链的具体操作

这里我们以采用apache服务器的网站为例,通过mod_rewrite来做url的重写与转向。

1,首先我们查看网站根目录下是否存在.htaccess文件,如果做过伪静态,那么这个文件已经存在(也不排除通过httpd.conf实现伪静态,那么则需要新建一个.htaccess)。在文件中写入以下代码:

rewriteengine on

rewritebase /

如果你的博客或网站采用的是一级目录的形式,则需要注意rewritebase的路径。大家可以在网上查找相关教程。这里不再多述。

2,如果网站中的来自外部的404错误不多,只有个别几个,那么可以通过使用以下字符来实现(以上文中的错误为例):

rewriterule ^rich-snippets.htmlgfq$ rich-snippets.html [r=301,l]

3,但往往这些404错误都是大批量出现的,且还会新增。那么我们就要观察404错误的规律,然后通过通配的方式来实现重定向。

还是以本文url为例,我们看到图中错误产生404页面的url一般都为加入了3位数字和字母的后缀:

产生404的错误url后缀

防范于未然,我们将所有.html后的所有有可能出现的字符的url,都跳转到.html以前的url,使用的代码是:

rewriterule ^([\w-]+)\.html.+$ $1.html [r=301,l]

需要注意的是,我个人博客文章页面的url是以 http://www.seoyangs.com/404-to-links.htm 形式出现的。原因可以参考我之前的一篇文章《wordpresss seo-新博客网站的优化》。但其他很多博主或者网站,在文章页上面还有一个或多个目录层级。那么就可以用

rewriterule ^你的目录名称/([\w-]+)\.html.+$ $1.html [r=301,l]

这样的方式进行重定向。

现在我们尝试访问之前报404错误的url链接:http://www.***.com/rich-snippets.htmlgfq

即可正常访问正确的url,同时应该属于我们的权重也通过链接的传递到达了我们的页面。

本文主要介绍的是一种seo的思路,实施办法还需要根据网站的特殊情况具体对待。

  • QQ咨询

  • 在线咨询
  • 点击咨询
  • 点击咨询
  • 点击咨询
  • 点击咨询