2

.httaccess 書き換えルールについてサポートが必要です。私のクライアントの 1 人は、「ウェブサイト abc.com は、google、bing、および yahoo 検索エンジン ボットからのトラフィックを (301 リダイレクトで) 送信する必要があります。それ以外の場合は、index.html (白いページ) を表示します。つまり、Google ロボットがクロールしている場合です。 abc.com には、実際のコンテンツではなく、bcd.com へのリダイレクトが表示されるはずです。」

これはこのように可能ですか?

RewriteEngine On 
RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteCond %{HTTP_USER_AGENT} msnbot [OR]
RewriteCond %{HTTP_USER_AGENT} Slurp
RewriteRule ^(.*)$ http://bcd.com/$1 [L,R=301]

ありがとう

4

1 に答える 1

5

ここでユーザー エージェントのリストを取得できます: http://www.user-agents.org/

しかし、あなたが持っているものはうまくいくはずです。ホスト名の追加チェックを追加できます。

RewriteEngine On 
RewriteCond %{HTTP_HOST} abc.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteCond %{HTTP_USER_AGENT} msnbot [OR]
RewriteCond %{HTTP_USER_AGENT} Slurp
RewriteRule ^(.*)$ http://bcd.com/$1 [L,R=301]

これらのルールは、空の htaccess ファイルで機能します。これは私の要求です:

GET /something HTTP/1.1
Host: abc.com
User-Agent: Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html)  

そして、これはApacheの応答です:

HTTP/1.1 301 Moved Permanently
Date: Mon, 15 Oct 2012 22:10:55 GMT
Server: Apache
Location: http://bcd.com/something
Content-Length: 289
Content-Type: text/html; charset=iso-8859-1
于 2012-10-15T22:11:44.650 に答える