如何修改.htaccess,使用301将原始URL和简单重写URL重定向到复杂重写URL

2016-07-07 15:00 来源:www.chinab4c.com 作者:ecshop专家

系统的.htaccess文件设置是
RewriteRule ^goods-([0-9]+)(.*)\.html$goods.php?id=$1 [QSA,L]
这样的规则是302重定向,对搜索引擎来说是不太好的
我试着将[QSA,L]改为[R=301,QSA,L],结果是将.html重定向goods.php?id=1了。

问:

如何修改.htaccess,使用301将原始URL和简单重写URL重定向到复杂重写URL

回答:
改成这样试试。
RewriteRule ^goods-([0-9]+)(.*)\.html$goods.php?id=$1 [R=301,L]

不行啊,只要加了R=301,就将.html重定向goods.php?id=1了。

RewriteRule ^goods-([0-9]+)(.*)\.html$goods.php?id=$1
试试这个呢

楼上的方法还只是重写,并不能将goods.php?id=$1以301的方式重定向到goods-([0-9]+)(.*)\.html。

我想要的是,不管搜索引擎原来收录的是goods.php?id=$1还是goods-1.html,当我启用了复杂重写的之后,不管搜索引擎还是用户都将被301重定向到goods-1-摩托罗拉A1200.html

只有这样才是对搜索引擎最友好的。

默认的重写规则没有使用301重定向,这样就会产生大量重复页面,对google来说是一大不利。

goods.php?id=$1
goods-1.html
goods-1-摩托罗拉A1200.html

三个路径其实是一个页面。

而搜索引擎会认为这是重负内容,大大减低权重。

官方的技术人员出面解决这个问题啊!

顶起来! 不要沉咯!

顶,,,

这的确是个很要命的问题,希望官方能够尽快解决这么多重复的问题,也希望官方能够尽早解决生成的网站地图只能是简单重写的问题

关注此问题.....

这个问题,麻烦来解释一下啊,怎么修正一下。

感觉官方现在对这些很要命的问题完全置之不理了

默认的重写规则没有使用301重定向,这样就会产生大量重复页面,对google来说是一大不利。

goods.php?id=$1
goods-1.html
goods-1-摩托罗拉A1200.html

三个路径其实是一个页面。

而搜索引擎会认为这是重负 ...
myjiadian 发表于 2007-11-23 22:21


那如果始终使用一种重写规则,是不是就可以了?

 rewriteCond % ^www.51study.net
  rewriteRule ^(.*)$ http://www.bbpao.com/ [R=301,L]

学习~~~~~~~~~