干掉各搜索引擎的爬虫
对于个人小站,经不起各大seo引擎搜索的蜘蛛一次又一次访问爬取,耗费站点流量先不谈,主要是这些爬虫像一堆苍蝇,把俺的站点当成了公共厕所,这就恶心了。点名头条家的爬虫,太尼玛不要脸了,俺站点的流量它家占了一大半。
国内国外爬虫一览
首先,来晒一下这些流氓们:
| 国内爬虫 | 名称 | 国外爬虫 | 名称 |
|---|---|---|---|
| 头条爬虫 | Bytespider | 谷歌蜘蛛 | Googlebot |
| 百度蜘蛛 | BaiduSpider | Yandex | YandexBot |
| 360蜘蛛 | 360Spider | Alexa | ia_archiver |
| 搜狗蜘蛛 | Sogou News Spider | Twitterbot | |
| SOSO蜘蛛 | Sosospider | Ahrefs | AhrefsBot |
| 一搜蜘蛛 | YisouSpider | Facebot | |
| 宜搜蜘蛛 | EasouSpider | ezooms | ezooms.bot |
| 即刻蜘蛛 | JikeSpider | 雅虎英文 | Yahoo! Slurp |
| 有道蜘蛛 | YodaoBot | YandexMobile | YandexMobileBot |
| 雅虎中文 | Yahoo! Slurp China | Majestic | MJ12bot |
| 必应蜘蛛 | bingbot | Moz | DotBot |
| MSN蜘蛛 | msnbot | SEMrush | SemrushBot |
| MSN蜘蛛2 | msnbot-media | DuckDuckGo | DuckDuckGo-Favicons-Bot |
这些大部分是俺从日志文件里扒出来的,可能有误伤,遗漏,大家将就着看,下面来说说怎么干掉这些流氓。
阻止爬虫爬取
有三种方法可以阻止这些爬虫爬取,效果不一。
1:server段添加add_header头,阻止爬虫爬取,效果不是很理想,如下:
add_header X-Robots-Tag "noindex, nofollow";
2:使用robots.txt文件可以阻止爬虫爬取,但是有些流氓不遵守robots规则,这种方法几乎无效,还是把方法写下来。
打开nginx.conf文件,server段添加如下内容:
1 | location /robots.txt { |
保存,重启nginx后,浏览器在主域名后添加 /robots.txt 显示如下,即为成功。参考:https://hostalk.net/robots.txt
1 | User-agent: * |
3:由于上面的方法不是很凑效,于是俺们还是简单粗暴地使用 http_user_agent 来屏蔽。方法如下,
打开nginx.conf文件,server段添加如下内容:
1 | if |
直接返回444,强制关闭服务器与客户端的连接而不返回任何响应信息给客户端。
相关文章