Nginx服务器如何屏蔽与禁止屏蔽网络爬虫
发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,这篇文章将为大家详细讲解有关Nginx服务器如何屏蔽与禁止屏蔽网络爬虫,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。每个网站通常都会遇到很多非搜索引擎的爬虫,这些爬
千家信息网最后更新 2024年11月17日Nginx服务器如何屏蔽与禁止屏蔽网络爬虫
这篇文章将为大家详细讲解有关Nginx服务器如何屏蔽与禁止屏蔽网络爬虫,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
每个网站通常都会遇到很多非搜索引擎的爬虫,这些爬虫大部分都是用于内容采集或是初学者所写,它们和搜索引擎的爬虫不一样,没有频率控制,往往会消耗大量服务器资源,导致带宽白白浪费了。
其实Nginx可以非常容易地根据User-Agent过滤请求,我们只需要在需要URL入口位置通过一个简单的正则表达式就可以过滤不符合要求的爬虫请求:
location / { if ($http_user_agent ~* "python|curl|java|wget|httpclient|okhttp") { return 503; } # 其它正常配置 ...}
注意:变量$http_user_agent
是一个可以直接在location中引用的Nginx变量。~*表示不区分大小写的正则匹配,通过python就可以过滤掉80%的Python爬虫。
Nginx中禁止屏蔽网络爬虫
server { listen 80; server_name www.xxx.com; #charset koi8-r; #access_log logs/host.access.log main; #location / { # root html; # index index.html index.htm; #} if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") { return 403; } location ~ ^/(.*)$ { proxy_pass http://localhost:8080; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
可以用 curl 测试一下
curl -I -A "qihoobot" www.xxx.com
关于"Nginx服务器如何屏蔽与禁止屏蔽网络爬虫"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
爬虫
服务器
网络
服务
篇文章
内容
变量
引擎
搜索引擎
更多
正则
搜索
不错
实用
位置
入口
初学者
大小
大部分
带宽
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
腾讯云服务器哪种好
海南数据服务器价格咨询
杭州边神网络技术公司服务电话
网络安全工程师好做吗
河南网络安全测评公司
公安部网络安全保卫局高军
web api 数据库
软件开发飞机大战游戏
网络安全身边有哪些事
网络安全读后感650字
服务器中的软件如何在客户端使用
qt连接数据库有网时速度比较快
mantis数据库配置
win7数据库密码
java 数据库操作封装
本周五下午网络安全大讲堂开讲啦
农合数据库操作出错
软件开发技术专业大学排名
信息安全中数据库安全
云优互联网科技有限公司
公大网络安全与执法复试考什么
网络安全宣传周 西游篇
连接数据库显示网络错误
登陆rds所在服务器
信息安全 网络安全的区别
网站为什么要服务器
我的世界从哪输入服务器号
游戏本 用来软件开发
朱勇钢与魏超计算机软件开发
深圳服务器托管网络安全