|
|
这里说的404错误不是网站内部产生的404,而是由于外链中存在指向本站的错误URL从而到了蜘蛛爬取错误,生成了404相应代码。我们要采取的就是将这些404页面301转向正常可访问的页面,使权重可以得到正常的传递。
$ B6 v5 F$ a- u1 l- a# ^, P1 W8 X a- W& V' A5 h9 c
在我们创作高质量内容时,总会遇到采集或者转载却不留版权信息的情况。更可恶的是,有些采集或转载的网站,为了防止自身网站的权重外流,在正常URL中随机假如了一些字母和数字,导致蜘蛛在网站中顺着链接进行爬取时,生成了404相应。( ?; r* ?' s5 D/ O9 g' s4 _" y
5 h6 @( ?7 N+ w3 P N
这个404错误,就是由“链接到您网站网页的域”中URL的错误导致的。再查看了Webmaster Tool中一系列404提示后,我们可以确定这个URL不是由于书写错误导致,而是由对方站点故意生成干扰字母或数字造成的。
- t3 p) d4 V. @% h
9 O) z7 J" }( \' U+ R( g遇到这样的状况,我们可以采取的措施有:" V0 V6 l! h' s6 B1 k C
6 S5 V( |1 x7 V) a5 B- \
1,像百度和谷歌举报(效果不好,同时有损RP)9 O7 s- U. S3 ~8 M' k7 a6 }9 h
2,装作没看见,什么事情都没有发生(心情会受影响)( J$ @2 c& M# C5 V$ D5 S
3,合理运用技术,拿回属于自己的东西(也是本文撰写的内容)
+ N1 Q1 w4 k! y# j& y" v3 t: j( |( e3 T( f1 g
这里我们需要用到的就是301重定向了。做SEO的人都知道,301是永久重定向的意思,同时可以将旧URL中的权重传递给新的URL。' a% G |( v- X6 C& S2 z5 {) `$ N
" v. U/ ^. ? ~+ g a# m; N# L1 T
这里,我们可以将出现404错误的页面看作旧URL,而将网站上存在的页面看作新URL。拿上图中的URL为例,就是:
' X6 p* Y2 F( `# z9 Y* A5 o7 G* c3 \- M3 ~4 D' ]. S- N
将恶意指向不存在页面的URL(产生了404错误):
% }! t( N$ v0 t" j- l: _5 `% j" x+ }- }5 ^3 [- B/ ?2 `
http://www.seoyangs .com/rich-snippets.htmlGFQ/ v% H' ~# v- p0 _4 j/ b- s ^
7 ^ ^" }; O% m- o) e通过301的方式,指向网站上原本存在的URL:+ |7 g7 Q9 E. K+ C! A1 Q
% G! z# @" u) {2 q( w8 S+ J6 vhttp://www.seoyangs .com/rich-snippets.html; @( q! W0 L$ G* D( E' H' A
2 j# A8 `) f$ ^5 g9 f' b这样,蜘蛛在访问对方网站错误的URL(上例中后缀GFQ的URL)后,会被重定向到正确的URL页面。从而达到帮助我们回复权重传递的作用。8 C1 `6 f2 w$ I. ]. o9 ]9 u
3 \1 K. A3 B1 O2 H0 A这里我们以采用Apache服务器的网站为例,通过mod_rewrite来做URL的重写与转向。9 u9 }$ `; o' [% d
% i+ P' v r8 W* l$ j3 J8 I% l3 m m' g1,首先我们查看网站根目录下是否存在.htaccess文件,如果做过伪静态,那么这个文件已经存在(也不排除通过httpd.conf实现伪静态,那么则需要新建一个.htaccess)。在文件中写入以下代码:/ r: s+ r. v5 Y, e9 B
% l& L# V0 n; U$ l4 YRewriteEngine on: U( E$ y2 R1 m5 ^: D
RewriteBase /0 W/ O6 Y6 X' ]4 I- R+ d# j
$ F, z' n$ J6 v, l! u! ~如果你的博客或网站采用的是一级目录的形式,则需要注意RewriteBase的路径。大家可以在网上查找相关教程。这里不再多述。
6 {% t0 b6 v M- h( e0 m4 G6 c! V: m, h( t) b! \8 w% g
2,如果网站中的来自外部的404错误不多,只有个别几个,那么可以通过使用以下字符来实现(以上文中的错误为例):, K! j8 O# N6 Y7 y6 Z
RewriteRule ^rich-snippets.htmlGFQ$ rich-snippets.html [R=301,L]0 R* N* o7 w! |$ W$ R6 e
8 Q1 ~$ N/ I! r. ]% q) N3,但往往这些404错误都是大批量出现的,且还会新增。那么我们就要观察404错误的规律,然后通过通配的方式来实现重定向。+ J% ?" M! t. ]5 L. @' N6 w
* [) z* `3 s$ b: s. D$ j& q& d
还是以本文URL为例,我们看到图中错误产生404页面的URL一般都为加入了3位数字和字母的后缀:" e r+ E/ U) e" g; K
7 J* g. I, H9 v防范于未然,我们将所有.html后的所有有可能出现的字符的URL,都跳转到.html以前的URL,使用的代码是:
' Z1 E$ v6 p) `( Y. t& L# o# M( U/ ]! Z& Q a
RewriteRule ^([\w-]+)\.html.+$ $1.html [R=301,L]
5 V6 M9 H8 O/ x) m: X& D3 P3 O1 f) P: }
需要注意的是,我个人博客文章页面的URL是以 http://www.best-ideas.cn/404-to-links.htm 形式出现的。原因可以参考我之前的一篇文章《WordPresss SEO-新博客网站的优化》。但其他很多博主或者网站,在文章页上面还有一个或多个目录层级。那么就可以用3 l- K1 D7 Y3 c# v6 R
( j& } v, d: K, O* X% {
RewriteRule ^你的目录名称/([\w-]+)\.html.+$ $1.html [R=301,L]
M9 L2 O6 O) t5 w) L
0 r- n9 S! N( ?* b4 [3 A这样的方式进行重定向。
# R% _) `. n6 z6 R$ ]9 e J# X Q2 }6 g
现在我们尝试访问之前报404错误的URL链接:http://www.yinshua188.com/rich-snippets.htmlGFQ) M" P: p+ T+ z: b0 `% h
' l+ {8 B) J- U$ M! [
即可正常访问正确的URL,同时应该属于我们的权重也通过链接的传递到达了我们的页面。. g% N- [, r: c: P7 U
9 {8 r" E2 k6 r) a本文主要介绍的是一种SEO的思路,实施办法还需要根据网站的特殊情况具体对待。 |
|