Nginx如何屏蔽一些垃圾搜索引擎/seo工具的爬虫的图文教程
阿里云服务器 | 腾讯云服务器 | VPS2EZ:老牌低调VPS | ZJI:香港日本美国独服 |
LOCVPS服务周到 | HostKvm低调KVM VPS | 傲游主机:优质VPS | 80VPS:老牌VPS主机 |
搬瓦工:CN2 GIA线路 | CloudCone:性价比高 | JustMySocks科学上网 | RackNerd:超级便宜 |
JustMySocks科学上网 | 好用的宝塔面板 | 购买搬瓦工VPS | 恒创:香港CN2服务器 |
在香港沙田的服务器上有几个站点。大家都知道,香港沙田的CN2线路的vps带宽都比较小,通常是2Mbps左右,用的也是2Mbps的机器。
前两天突然发现网站打开的速度比较慢,需要延迟3~5秒才能打开网站,这是不正常的情况。
经过排查Nginx日志,发现网站被一些垃圾搜索引擎/seo工具的爬虫不停爬取,消耗了网站的带宽,造成网站访问困难。
对付这种垃圾的蜘蛛,最好的方法就是禁止其访问,那么我们应该怎么做呢?
下面给大家做个演示。
一:找到垃圾蜘蛛的UA特征
我使用的是宝塔面板。通过宝塔面板上的网站监控报表,可以看到对应网站的nginx日志。如果你使用的不是宝塔面板,你可以将网站的日志下载下来。用notepad++或者其他代码编辑软件打开。
宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取
上图这个UA是semrush的爬虫UA,对SEO没有作用,针对这个UA可以做屏蔽。提取这个UA的特征 semrush
上图这个UA带上了所有热门浏览器的特征,明显是恶意UA,提取这个UA的特征 HUAWEIEML-AL00
二:针对特定UA进行屏蔽
屏蔽UA功能,是写在对应网站的nginx的配置文件中的。
如果你使用的是宝塔面板。配置路径如下:
红框中的代码,即为屏蔽的代码。下面将我使用的代码贴出。大家可以复制使用。
放到server后面的大括号后面即可!
#禁止指定UA及UA为空的访问 if ($http_user_agent ~ "semrush|opensiteexplorer|OPPO A33 Build|HUAWEIFRD-AL00|Dorado|^$" ) { return 403; }
刚才提到的semrush、HUAWEIFRD-AL00均进行了屏蔽。我同时对一些其他UA进行了屏蔽,大家可以按需填写使用!
评论专区