网络爬虫对服务器的危害,nginx服务器屏蔽网络爬

<返回列表

网络上有非常多的令人厌恶的幽灵程序爬虫,没日没夜地采集别人的网站,将别人劳动成果据为己有。想到要对于这些不受待见的爬虫,相信很多站长气得牙痒痒的,但又无计可施。

网络爬虫的坏处:

采集器频繁地抓取影响了网站的正常运行了,尤其是对于低配服务器,那点可怜的虚拟空间的流量可能没多久就被搞完了。那种经常打不开或者打开很慢的网站,除了服务器配置本身差劲外,很多时候要归功于网络采集器。

每个网站通常都会遇到很多非搜索引擎的爬虫,这些爬虫大部分都是用于内容采集或是初学者所写,它们和搜索引擎的爬虫不一样,没有频率控制,往往会消耗大量服务器资源,导致带宽白白浪费了。下面介绍下怎么通过nginx来屏蔽网络爬虫的方法。

经常看到网上有seo或站长朋友提到用robots.txt文件的 user-agent配合disallow指令来实现屏蔽。指点别人在网站根目录创建robots.txt文件了,写了一堆的指令,去禁止那些不受欢迎的爬虫。满心欢喜地以为就做到屏蔽效果了,达到目的了。其实不然,首先要明白一点,robots.txt只是网络机器人(或者蜘蛛)的一种抓取的条约,注意,仅仅是条约,定义了哪些能抓? 哪些内容不能抓? 欢迎哪些爬虫抓取?不欢迎哪些爬虫抓取?

这样的条约,其实是没有约束力的,爬虫是否遵守这些条约是另一回事,对于爬虫中的正人君子(正规搜索引擎)确实有效,它们来到网站后,通常会查看一下robots.txt文件,老实地按照站长的规则来抓取网页,然而,对那些采集爬虫有效吗?很确定地说:无效,它们完全无视robots.txt,它们只要网站的内容,更有甚者,看到那些明令指定不能抓取的网页更是加大力度来采集,既然不准抓取,说不定有什么好东西呢?

所以说,robots.txt不是万能钥匙,能防君子,不能防小人。但也不是没有办法,作为web服务器的龙头:apache和nginx其实都有屏蔽策略,关键是要会用。下面说一种我之前的单位使用的一种禁止策略,该策略能屏蔽一部分程序的采集。现将代码放在下面,操作方法:找到 nginx.conf配置文件,将下面的代码放到server里。

1

2

3

4

#禁止爬虫工具和不相关搜索引擎的抓取

if ($http_user_agent ~* (scrapy|curl|httpclient|python|phantomjs|etaospider|huihuispider|wochachaspider|gwdangspider|yyspider|mj12bot|^$)) {

return 403;

}

最终成这样:

1

2

3

4

5

6

7

8

9

10

server

{

#禁止爬虫工具和不相关搜索引擎的抓取

if ($http_user_agent ~* (scrapy|curl|httpclient|python|phantomjs|etaospider|huihuispider|wochachaspider|gwdangspider|yyspider|mj12bot|^$)) {

return 403;

}

# 下面是其他的配置项

}

保存配置文件,使用命令行:

1

systemctl restart nginx

重启nginx服务生效。

其他方法:

1.基于程序本身去防止爬取:作为爬虫程序,爬取行为是对页面的源文件爬取,如爬取静态页面的html代码,可以用jquery去模仿写html,这种方法伪装的页面就很难被爬取了,不过这种方法对程序员的要求很高。

2.基于iptables和shell脚本:可以对nginx的access.log进行策略定义,例如定义在1分钟内并发连接数超过30个ip为非法,如ip不在白名单内,则加入iptables策略封掉,当然这种的缺点是会有“误伤”,策略细粒度越小就会有更多的“误伤”,细粒度大就会使效果变差,另外还有类似的第三方工具fail2ban,利用做filter和actor对一些有危害的操作记录或是封ip。但是对于某个特定的爬虫地址(例如网易、有道)的爬取行为拒绝也很难准确做到,因为你无法准确知道这些特定的爬虫ip地址(例如网易、有道),以下是我的定位方式,不过发现由于ip库不准确造成错误的屏蔽。注意:建议不要用封ip条目的方式,iptables列表长度是65535时就会封满,服务器也就会死机。

本文抛砖引玉,仅可以对付一般的网络采集程序,我们跟网络爬虫的斗争才刚刚开始,更多请关注数据吧资讯

国内免备案VPS301跳转服务器国内免备案服务器域名被墙跳转301,绕过信息安全中心不能放违反法律法规内容!(北京免备案镇江免备案江苏免备案辽宁免备案vps山东联通免备案
分享新闻到:

更多帮助

服务器不备案是否可以正常访问网站?详细解读与解决方案

新闻中心 2025-11-22
在互联网世界中,网站的存在离不开服务器的支持。而在一些国家和地区,服务器上的网站运营需要遵循特定的法规,其中之一就是网站备案。备案制度的初衷是为了加强对互联网内···
查看全文

SEO必备:什么是301跳转及其对网站优化的影响

新闻中心 2025-11-22
在网站优化的世界中,301跳转扮演着一个重要角色,它不仅影响着用户访问体验,还对搜索引擎排名产生深远影响。理解并正确使用这一技术,是站长们必须掌握的一个技能。我···
查看全文

购买国内免备案空间:选择最佳方案与使用优势解析

新闻中心 2025-11-21
在当今的数字化时代,网站已经成为企业和个人展示信息的重要渠道。为了确保网站能够顺利运营,一个关键问题便是选择合适的主机空间。对于许多希望在国内开展业务的网站主来···
查看全文
返回更多帮助