【发布时间】:2013-01-26 18:17:18
【问题描述】:
例子:
1) 网址(结构不佳)已被 Google 编入索引:
www.abc.com/index.php?product=zzz
2) 使用以下重写规则重写 URL:
RewriteRule ^zzz$ index.php?product=zzz [L,NC]
上述工作正常,但我们想告诉 Google 该页面已从 (1) URL www.abc.com/index.php?product=zzz 中的 URL 永久移动到 (2) www 中的 URL .abc.com/zzz
3) 现在我们在规则 (2) 之上应用以下规则:
RewriteCond %{QUERY_STRING} ^product=zzz [NC]
重写规则索引http://www.abc.com/zzz? [L,R=301]
这会导致无限循环。我们如何告诉 Google 我们的网站已从 www.abc.com/index.php?product=zzz 更改为 www.abc.com/zzz?还是 Google 会自己做这件事?
-----当前完整的 htaccess 规则导致无限循环:-----
RewriteCond %{QUERY_STRING} ^product=zzz [NC]
重写规则索引http://www.abc.com/zzz? [L,R=301]
重写规则 ^zzz$ index.php?product=zzz [L,NC]
【问题讨论】: