中国vs日本之 nginx 爬虫配置

简介: 前言 昨天网站突然间挂了 而且出现504 通过监控看出tcp连接增多 查看nginx日志发现德国的ip在爬取公司网站如图。nginx代码如下:进入到nginx安装目录下的conf目录,将如下代码保存为 agent_deny.

前言 

昨天网站突然间挂了 而且出现504 通过监控看出tcp连接增多 查看nginx日志发现德国的ip在爬取公司网站如图。

wKiom1mL5lSSU-7zAAKnrdkxNXQ104.png-wh_50

nginx代码如下:

进入到nginx安装目录下的conf目录,将如下代码保存为 agent_deny.conf


cd /usr/local/nginx/conf

vim agent_deny.conf


#禁止Scrapy等工具的抓取

if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {

     return 403;

}

#禁止指定UA及UA为空的访问

if ($http_user_agent ~ "FeedDemon|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms|^$" ) {

     return 403;

}

#禁止非GET|HEAD|POST方式的抓取

if ($request_method !~ ^(GET|HEAD|POST)$) {

    return 403;

}

wKiom1mL6BaBll-eAAApGfTEE2k285.png


然后,在网站相关配置中的  location / {  之后插入如下代码:


如李世龙的配置文件 cat /etc/nginx/conf/nginx.conf 

wKiom1mL563je-x5AAAUGww9UYo056.png


保存后重新启动。 systemctl restart nginx and systemctl reload nginx 。




相关文章
|
4月前
|
数据采集 存储 C++
单线程 vs 多进程:Python网络爬虫效率对比
本文探讨了Python网络爬虫中的单线程与多进程应用。单线程爬虫实现简单,但处理速度慢,无法充分利用多核CPU。而多进程爬虫通过并行处理提高效率,更适合现代多核架构。代码示例展示了如何使用代理IP实现单线程和多进程爬虫,显示了多进程在效率上的优势。实际使用时还需考虑代理稳定性和反爬策略。
单线程 vs 多进程:Python网络爬虫效率对比
|
4月前
|
数据采集 Web App开发 数据处理
Lua vs. Python:哪个更适合构建稳定可靠的长期运行爬虫?
Lua vs. Python:哪个更适合构建稳定可靠的长期运行爬虫?
|
4月前
|
数据采集 Web App开发 搜索推荐
项目配置之道:优化Scrapy参数提升爬虫效率
项目配置之道:优化Scrapy参数提升爬虫效率
|
4月前
|
数据采集 负载均衡 应用服务中间件
Python爬虫之Splash负载均衡配置#7
Splash负载均衡配置【2月更文挑战第28天】
60 0
|
数据采集 Python
配置Pycharm的Scrapy爬虫Spider子类通用模板
配置Pycharm的Scrapy爬虫Spider子类通用模板
227 0
|
Web App开发 数据采集 缓存
Python爬虫入门教程 41-100 Fiddler+夜神模拟器+雷电模拟器配置手机APP爬虫部分
爬前叨叨 从40篇博客开始,我将逐步讲解一下手机APP的爬虫,关于这部分,我们尽量简化博客内容,在这部分中可能涉及到一些逆向,破解的内容,这部分尽量跳过,毕竟它涉及的东西有点复杂,并且偏离了爬虫体系太远,有兴趣的博友,可以一起研究下。
3363 0
|
数据采集 API Python
scrapy爬虫加载API,配置自定义加载模块
当我们在scrapy中写了几个爬虫程序之后,他们是怎么被检索出来的,又是怎么被加载的?这就涉及到爬虫加载的API,今天我们就来分享爬虫加载过程及其自定义加载程序。 SpiderLoader API  该API是爬虫实例化API,主要实现一个类SpiderLoader class scrapy.loader.SpiderLoader 该类负责检索和处理项目中定义的spider类。
1335 0
|
数据采集 应用服务中间件 nginx
|
数据采集 监控 应用服务中间件
[译] 在 Apache 和 Nginx 日志里检测爬虫机器人
本文讲的是[译] 在 Apache 和 Nginx 日志里检测爬虫机器人,现在阻止基于 JavaScript 追踪的浏览器插件享有九位数的用户量,从这一事实可以看出,web 流量日志可以成为一个很好的、能够感知有多少人在访问你的网站的地方。
1825 0