我想站长朋友们对301再熟悉不过了,几乎每个建站的朋友们,通常都会做个最简单的301永久重定向,将不带“www”的301重定向到带“www”的首页域名上。301跳转带来的好处也不用多说,是搜索引擎承认的友好的跳转方式。今天聊的是301如果跳转错了,同样的带来的麻烦也不小,先看下面的图。
在这种情况下,由于301重定向的设置错误,导致创建了一个错误的带参数“/?id=1234”新页面,而动态页面中,这样的首页和真正首页是一样的。这就意味着,首页每天更新,这新页面也跟着更新。再试想,如果这个“web”目录下有N个页面301重定向至首页,则意味着创建N个新页面,换句话说N个首页,这样的后果大家不言而喻了。
这是一个问题,急需解决,那么解决这个问题,难度又来了。网上找了一大堆资料,请教了很多人没找到答案。难点就在“/?”这里,可谓是煞费苦心。最后一度放弃301,用JS跳转这种方式去损失权重的方式去淘汰错误页面,可是最后还是整出来了。大家看看,服务器要支持.htaccess文件。
Options +FollowSymLinks
RewriteEngine on
#RewriteCond %{HTTP_HOST} ^domain。com NC
# RewriteRule ^(.*)$ http://www.domain.com/$1 L,R=301
#RewriteLogLevel 3
#RewriteLog "logs/rewrite.log"
#RewriteBase /
RewriteCond %{QUERY_STRING} id=
#RewriteRule (.*) http://www.domain.com/$1?R=301
RewriteRule ^$ http://www.domain.com/? L,R=301
上面是我解决的一个特例,代码也就此保存下来。301永久重定向固然好用,但是用错了也会带来不少麻烦,很影响你的站点。最后,提醒做了301重定向的站长朋友,检查一下你们的设置,特别是对于多个目录设置了301永久重定向。
原文由招商加盟www.9355.com/ 站长原创,转载务必带上链接。