2014-02-25 49 views
1

我正在试验一个想法,并试图让雅虎Slurp机器人在我的网站上,但通过301重定向重定向其他人。我无法得到一个负面的比赛。发送到思乐普和site2.com保持其他人在site1.com喜欢这工作得很好:负面匹配RewriteCond不工作

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

保持其他人在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] 
+0

你的意思是在你把二审site1.com把 'site2.com'(在最后一行)?因为这不起作用,如果你做到了。对我来说,它只是让每个人都在site1.com上,而不管用户代理。 – toadly

+0

但你是不是想让'其他人保留在site1.com上? – anubhava

+0

我相信你想'if(Slurp)=> site2.com其他site1.com'吧? – anubhava