0

我试图阻止谷歌、必应、雅虎爬虫被重写,我怎样才能检测到它们?
这似乎不起作用:

RewriteCond %{HTTP_USER_AGENT} !(googlebot|bingbot|yahoo)    [NC]    
RewriteCond %{REQUEST_URI} !(^|&)images(&|$)
RewriteRule ^images/(.*)$ http://www.mydomain.com/script.php?e=$1 [NC,R]   

我相信 googlebot 是大写的(Googlebot),这有什么不同吗?

4

1 回答 1

0

RewriteCond看起来不错。大写无关紧要,因为您使用NC(nocase) 标志。问题可能与第二个有关RewriteCond

您可以停止为 Google 和 co 进行的所有重写。一开始有这个规则

RewriteCond %{HTTP_USER_AGENT} (googlebot|bingbot|yahoo) [NC]
RewriteRule ^ - [L]

如果用户代理字符串是提到的爬虫之一,这将忽略所有后续规则。

于 2013-04-25T01:33:24.350 回答