0

Google はいくつかの奇妙な URL をインデックスに登録しましたが、今ではそれらにいくつかヒットしています。それらのヒットを取り除き、フロントページに書き直したいのですが、それを行うためのスキルが不足しているようです.

このルールでは、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=302ますR=301R=301mod_rewrite ルールをテストしている間は (Permanent Redirect) を使用しないでください。

于 2013-05-27T17:17:24.983 に答える