我们都知道可以通过robots.txt来引导蜘蛛抓取内容,多个域名的时候可以301重定向转移权重,但有时候我们可能要特定某个域名不允许抓取,这个时候就需要rewrite来控制。

如果要直接屏蔽蜘蛛抓取,可以参考我的另外一篇文章 点击查看

注:HTTP_USER_AGENT 里面是要屏蔽的蜘蛛,根据直接需要添加就可以了。

iis、apache的规则如下:

RewriteEngine on 
RewriteCond%{HTTP:Host} xxx.xxx.com
RewriteCond%{HTTP_USER_AGENT}(baiduspider|googlebot)[NC]RewriteRule^(.*)$ -[F]

xxx.xxx.com域名不允许百度和谷歌蜘蛛访问。

iis7规则如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
           <rules>
             <rulename="Block spider"stopProcessing="true">
                 <matchurl="(.*)"ignoreCase="false"negate="false"/>
                   <conditions>
                     <addinput="{HTTP_HOST}"pattern="^xxx.xxx.com$"/>
                        <addinput="{HTTP_USER_AGENT}"pattern="baiduspider|googlebot"/>
                   </conditions>
                          <actiontype="AbortRequest"/>
              </rule>
           </rules>
        </rewrite>
    </system.webServer>
</configuration>

附录:
常见蜘蛛名字:
google蜘蛛:googlebot
百度蜘蛛:baiduspider
yahoo蜘蛛:slurp
alexa蜘蛛:ia_archiver
msn蜘蛛:msnbot
bing蜘蛛:bingbot
altavista蜘蛛:scooter
lycos蜘蛛:lycos_spider_(t-rex)
alltheweb蜘蛛:fast-webcrawler
inktomi蜘蛛:slurp
有道蜘蛛:YodaoBot和OutfoxBot
热土蜘蛛:Adminrtspider
搜狗蜘蛛:sogou spider
SOSO蜘蛛:sosospider
360搜蜘蛛:360spider