首先需要说明之所以禁用的原因,本站利用WordPress建站,安装了蜘蛛分析,可以很清楚的看到当天或指定天的蜘蛛爬取情况。
但是,这几天明显可以看到蜘蛛爬取的不对劲,甚至百度蜘蛛都没有它厉害,导致服务器的负载直接100%,还偶尔影响到了CPU也直接100%,没的说,检查一下吧。
但是发现蜘蛛爬取的数据明显不对劲,在短短的几个小时内,飙升到好几千,百度蜘蛛爬取却显示不到一千,好了,禁止走起。
本次推荐使用服务器的方式去禁止,而不是通过robots.txt去禁止。
原因很简单,因为这个文件是人家愿意遵守就遵守,不愿意遵守你也白搭。
上方法:
if ($http_user_agent ~ "FeedDemon|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|python-requests|lightDeckReports Bot|DigExt|HttpClient|MJ12bot|heritrix|Ezooms|^$" ) {
return 403;
}
将上述代码添加到自己对应网站的NGINX配置文件内,保存即可,一般直接就能看到效果。
我是使用的宝塔面板,说一下步骤:
网站--www.aceanow.com--配置文件
在
sever{
}
里面添加即可。
以上的解释一下,将以上的指定浏览器爬虫禁止,显示403类型。
那么,你如果有其他需要禁止的爬虫,同样可以继续加入。
'Google Bot' => 'google'
'MSN' => 'msnbot'
'Alex' => 'ia_archiver'
'Lycos' => 'lycos'
'Ask Jeeves' => 'jeeves'
'Altavista' => 'scooter'
'AllTheWeb' => 'fast-webcrawler'
'Inktomi' => 'slurp@inktomi'
'Turnitin.com' => 'turnitinbot'
'Technorati' => 'technorati'
'Yahoo' => 'yahoo'
'Findexa' => 'findexa'
'NextLinks' => 'findlinks'
'Gais' => 'gaisbo'
'WiseNut' => 'zyborg'
'WhoisSource' => 'surveybot'
'Bloglines' => 'bloglines'
'BlogSearch' => 'blogsearch'
'PubSub' => 'pubsub'
'Syndic8' => 'syndic8'
'RadioUserland' => 'userland'
'Gigabot' => 'gigabot'
'Become.com' => 'become.com'
'Baidu' => 'baiduspider'
'so.com' => '360spider'
'Sogou' => 'spider'
'soso.com' => 'sosospider'
'Yandex' => 'yandex'
需要的可以根据以上的参考填入到NGINX配置文件中,禁止该类爬虫的禁止爬取。