|
|
这里说的404错误不是网站内部产生的404,而是由于外链中存在指向本站的错误URL从而到了蜘蛛爬取错误,生成了404相应代码。我们要采取的就是将这些404页面301转向正常可访问的页面,使权重可以得到正常的传递。) m2 k6 C' d' h
5 L t! U! ^" O, k) `0 }在我们创作高质量内容时,总会遇到采集或者转载却不留版权信息的情况。更可恶的是,有些采集或转载的网站,为了防止自身网站的权重外流,在正常URL中随机假如了一些字母和数字,导致蜘蛛在网站中顺着链接进行爬取时,生成了404相应。
5 L) J+ `9 j7 w8 |9 Z9 b* \ J. s: G2 s$ Z1 E: Y
这个404错误,就是由“链接到您网站网页的域”中URL的错误导致的。再查看了Webmaster Tool中一系列404提示后,我们可以确定这个URL不是由于书写错误导致,而是由对方站点故意生成干扰字母或数字造成的。+ O2 `9 P# U' L2 M! T/ g. D
2 z H4 o7 p" T( s. L6 U6 w
遇到这样的状况,我们可以采取的措施有:
5 b( }8 d2 u- m( F; [
/ i% w& u3 ^7 C1 o) k3 N7 L/ I1,像百度和谷歌举报(效果不好,同时有损RP); P4 y6 P- e; G6 b2 |
2,装作没看见,什么事情都没有发生(心情会受影响)" |: h* q( E% Z! R Q$ M. g
3,合理运用技术,拿回属于自己的东西(也是本文撰写的内容); Q3 y' ]7 t% ~# V: Z# |
9 W. x% w" O) V- k这里我们需要用到的就是301重定向了。做SEO的人都知道,301是永久重定向的意思,同时可以将旧URL中的权重传递给新的URL。
! h l- e) {) ^; G' e0 G7 a7 U( D" t: r) F6 |9 z; s
这里,我们可以将出现404错误的页面看作旧URL,而将网站上存在的页面看作新URL。拿上图中的URL为例,就是:
" v) y- D+ o% ~( j: M6 j! k: g* s4 _
将恶意指向不存在页面的URL(产生了404错误):
- h1 P) w7 `1 ?( \7 L+ L. p7 h- `# Y
http://www.seoyangs .com/rich-snippets.htmlGFQ: C. A* [: ^& ]: O. L
7 a( U1 F; i C& p" n通过301的方式,指向网站上原本存在的URL:
; M" @1 I i2 i) V1 n2 z
) r6 n) O- i# g+ uhttp://www.seoyangs .com/rich-snippets.html8 }0 f6 n# P$ {
8 W* C: U3 b) H/ l2 J( _这样,蜘蛛在访问对方网站错误的URL(上例中后缀GFQ的URL)后,会被重定向到正确的URL页面。从而达到帮助我们回复权重传递的作用。7 B0 C( T' \! ~( D$ i6 n
O- B2 ?7 {0 r5 C& K这里我们以采用Apache服务器的网站为例,通过mod_rewrite来做URL的重写与转向。
" S$ g# f' h n. V* v* N
* D- D# g) M5 O1,首先我们查看网站根目录下是否存在.htaccess文件,如果做过伪静态,那么这个文件已经存在(也不排除通过httpd.conf实现伪静态,那么则需要新建一个.htaccess)。在文件中写入以下代码:* y, k) ?+ Q1 D5 D- U* T) l
4 Z; h* {1 | o5 B6 c! v
RewriteEngine on: `9 R2 Z* f0 i
RewriteBase /4 p1 l1 ], K% o
- P5 Q( k- L6 M" j. e; @3 J0 l7 p如果你的博客或网站采用的是一级目录的形式,则需要注意RewriteBase的路径。大家可以在网上查找相关教程。这里不再多述。. S' k6 L2 i! i/ _
! o! p) ?" F" R! u+ Q$ Q4 s; g
2,如果网站中的来自外部的404错误不多,只有个别几个,那么可以通过使用以下字符来实现(以上文中的错误为例):, J1 y$ |$ P( s
RewriteRule ^rich-snippets.htmlGFQ$ rich-snippets.html [R=301,L]' k$ q$ D4 x' {4 j5 Z; b
3 O0 j5 k$ G( L. w2 z7 q& a3,但往往这些404错误都是大批量出现的,且还会新增。那么我们就要观察404错误的规律,然后通过通配的方式来实现重定向。7 ~% n; q( Q) p* Y0 ?
( z6 _2 F( D4 {, y0 K( s* z6 _4 B {还是以本文URL为例,我们看到图中错误产生404页面的URL一般都为加入了3位数字和字母的后缀:7 ?9 N- J2 J" f" h. L* \+ d; y' Q, |
+ d( S$ p* e4 H H8 p防范于未然,我们将所有.html后的所有有可能出现的字符的URL,都跳转到.html以前的URL,使用的代码是:, } I: {0 {$ p
" Y/ v: m0 ^+ K1 zRewriteRule ^([\w-]+)\.html.+$ $1.html [R=301,L]- S7 {2 K* [7 e C3 N# x
6 ~7 s1 D) e/ |" [/ k7 C
需要注意的是,我个人博客文章页面的URL是以 http://www.best-ideas.cn/404-to-links.htm 形式出现的。原因可以参考我之前的一篇文章《WordPresss SEO-新博客网站的优化》。但其他很多博主或者网站,在文章页上面还有一个或多个目录层级。那么就可以用: m; Q9 H$ m- r0 U
1 g1 A( c1 W' I3 l) e! l
RewriteRule ^你的目录名称/([\w-]+)\.html.+$ $1.html [R=301,L]
8 {6 L* a8 `8 j# M9 Z4 a1 L# R4 v" o7 p0 v# [8 X/ c7 t( ], R5 ~6 d, b
这样的方式进行重定向。
. ~ s1 j9 U3 g) O0 D6 M" U& q, w/ } U& [- m0 Z9 j. O
现在我们尝试访问之前报404错误的URL链接:http://www.yinshua188.com/rich-snippets.htmlGFQ) H& z+ s: q5 S0 k1 I
( c2 l+ q% [( J$ N- h
即可正常访问正确的URL,同时应该属于我们的权重也通过链接的传递到达了我们的页面。" K7 X9 @' c- A0 g% o0 `! J$ V
! a1 A/ X" f% D8 N* e
本文主要介绍的是一种SEO的思路,实施办法还需要根据网站的特殊情况具体对待。 |
|