如何通过Nginx禁止垃圾爬虫,防止浪费服务器资源?
Nginx禁止垃圾爬虫是非常有必要的,一个事为了防止网站被采集,另一个是防止垃圾爬虫浪费服务器资源。
当然对于宝塔面板免费Nginx防火墙或者收费nginx防火墙不满意,可以通过以下代码来操作。
将以下代码粘贴到宝塔站点的配置文件中,即可完成。
server {
listen 80 default_server;
listen [::]:80 default_server;
index index.html index.htm index.nginx-debian.html;
server_name 规则名称;
location / {
try_files $uri $uri/ =404;
}
#forbidden Scrapy
if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {
return 403;
}
#forbidden UA
if ($http_user_agent ~ "DotBot|crawler|FeedDemon|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|DataForSeoBot|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|python-requests|lightDeckReports Bot|YYSpider|DigExt|SemrushBot|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms|^$" ) {
return 403;
}
#forbidden not GET|HEAD|POST method access
if ($request_method !~ ^(GET|HEAD|POST)$) {
return 403;
}
}媒体库专用-秒传-123或115这个内容需要赞助后可见
本站原创文章,转载时,必须在文章显著位置,注明本文来源于网站及原文链接,未经原作者许可,禁止在商业场合或用于任何盈利性目的进行转载。
