负匹配RewriteCond无法正常工作

时间:2014-02-25 21:21:25

标签: apache .htaccess mod-rewrite rewrite match

我正在尝试一个想法,并尝试将Yahoo Slurp-bot保留在我的网站上,但通过301重定向重定向其他人。我不能得到负面的比赛。将slurp发送到site2.com并将其他所有人保存在site1.com上就可以了。

RewriteEngine On 
RewriteCond %{HTTP_HOST} site1.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} Slurp
RewriteRule ^(.*)$ http://www.site2.com [L,R=301]

相反的情况并非如此:

RewriteEngine On 
RewriteCond %{HTTP_HOST} site1.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} !Slurp
RewriteRule ^(.*)$ http://www.site2.com [L,R=301]

用户代理100%正确。

1 个答案:

答案 0 :(得分:1)

  

将所有其他人留在site1.com

您可以使用:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} !Slurp [NC]
RewriteRule ^(.*)$ http://www.site2.com/$1 [L,R=301,NE]