0

谷歌已经索引了一些奇怪的网址,现在我得到了一些点击。我想摆脱那些点击并将它们重写到首页,但似乎我缺乏一些技能来做到这一点。

在这条规则中,我试图将 www.website.com/?f= 重写为 www.website.com,但它没有做任何事情

RewriteCond %{HTTP_HOST} ^www.website\.com$
RewriteRule ^/?f=$ "http://www.website.com/" [R=301,L]

在这种情况下,我得到 www.website.com/.html 命中并尝试将其重写为 www.website.com 根目录,但不影响 www.website.com/news.html

RewriteCond %{REQUEST_URI} !^/\.html [NC]
RewriteRule (.*) http://www.website.com [R=301,L]

--bp

4

1 回答 1

0

您需要了解 RewriteRule 与查询字符串不匹配。有这样的规则:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} ^f= [OR]
RewriteCond %{REQUEST_URI} ^/\.html$ [NC]
RewriteRule ^ http://www.website.com/ [R=302,L]

确认它工作正常后,替换R=302R=301. R=301在测试你的 mod_rewrite 规则时避免使用(永久重定向)。

于 2013-05-27T17:17:24.983 回答