Nginx屏蔽个别User-Agent蜘蛛访问网站的方法

news/2024/5/20 15:30:52/文章来源:https://blog.csdn.net/stocky1234/article/details/84529643

查看原文:http://www.sijitao.net/1930.html
对于做国内站的我来说,我不希望国外蜘蛛来访问我的网站,特别是个别垃圾蜘蛛,它们访问特别频繁。这些垃圾流量多了之后,严重浪费服务器的带宽和资源。通过判断user agent,在nginx中禁用这些蜘蛛可以节省一些流量,也可以防止一些恶意的访问。

步骤

1、进入nginx的配置目录,例如cd /usr/local/nginx/conf

2、添加agent_deny.conf配置文件

#禁止Scrapy等工具的抓取
if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {return 403;
}
#禁止指定UA及UA为空的访问
if ($http_user_agent ~ "FeedDemon|JikeSpider|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|YisouSpider|HttpClient|MJ12bot|heritrix|EasouSpider|LinkpadBot|Ezooms|^$" )
{return 403;
}
#禁止非GET|HEAD|POST方式的抓取
if ($request_method !~ ^(GET|HEAD|POST)$) {return 403;
}

3、在网站相关配置文件中插入代码“include agent_deny.conf ;”。

location ~ [^/]\.php(/|$)
{try_files $uri =404;fastcgi_pass  unix:/tmp/php-cgi.sock;fastcgi_index index.php;include fastcgi.conf;include agent_deny.conf ;
}

4、重新加载nginx

/etc/init.d/nginx reload

测试

通过curl模拟蜘蛛抓取访问。

root@vm-199:~# curl -I -A "BaiduSpider" www.sijitao.net
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 09 Feb 2015 03:37:20 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: PHP/5.5.19
Vary: Accept-Encoding, Cookie
Cache-Control: max-age=3, must-revalidate
WP-Super-Cache: Served supercache file from PHProot@vm-199:~# curl -I -A "JikeSpider" www.sijitao.net           
HTTP/1.1 403 Forbidden
Server: nginx
Date: Mon, 09 Feb 2015 03:37:44 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-aliveroot@vm-199:~# curl -I -A "" www.sijitao.net             
HTTP/1.1 403 Forbidden
Server: nginx
Date: Mon, 09 Feb 2015 03:37:52 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-alive

nginx日志上的效果如下。

20150209114009

到这里,nginx通过判断User-Agent屏蔽蜘蛛访问网站就已经完成,可以根据实际情况对agent_deny.conf中的蜘蛛进行增加、删除或者修改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_746514.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用七牛云解决gravatar头像拖慢wordpress网站打开速度的问题

查看原文:http://www.sijitao.net/1968.html 之前博主使用的是多说镜像来解决gravatar头像打不开和拖慢网站打开速度的问题,但运行一段时间后发现多说头像不怎么稳定,有时候头像还是打不开。所以这次试用七牛云存储来解决,整体思路…

Zabbix 增加HTTPS网站SSL证书过期时间监控

原文地址:https://zhangnq.com/3106.html 随着HTTPS网站的普及,SSL证书的过期时间需要重点关注。如果使用lets encrypt的免费证书,可以配置自动更新程序。不过我觉得最好还是做下监控,因为有时候自动续期可能会出现问题。zabbix实…

Nginx和PHP网站防CC攻击解决方案步骤举例

昨天接到客户服务器告警,看到一个nginx+php网站正在遭受CC攻击,导致服务器复制居高不下,正常业务访问大多数时候出现502错误。 CC攻击是 DDOS(分布式拒绝服务) 的一种,DDoS是针对IP的攻击,而CC攻击的是网页。CC攻击来的IP都是真实的,分散的。数据包都是正常的数据包,攻…

2011年国外最受欢迎的15个Torrent网站

2019独角兽企业重金招聘Python工程师标准>>> 面向全球电子商务知识库网站eBizMBA公布了2011年国外最受欢迎的15个Torrent网站: 1 ISOHunt (http://www.isohunt.com) eBizMBA排名第392,估计每月访客12000000人,竞争力排名第713&…

使用Bootstrap 3开发响应式网站实践01,前期准备、导航区域等

“使用Bootstrap 3开发响应式网站实践”系列,将使用Bootstrap 3.2制作一个自适应网站,无论是在电脑、平板,还是手机上,都呈现比较好的效果。在电脑浏览器上的最终效果如下: 在手机上的呈现效果如下: 本篇主…

一些网站 http://ychun.w.googlepages.com/pages

大家都可以说话的地方: 电子产品世界:http://bbs.edw.com.cn nios论坛:http://www.niosforum.com 嵌入式论坛:http://www.anywlan.com/tony/bbs PLD论坛:http://www.pld.com.cn/bbs/index.asp EDAboard:htt…

国外网站设计:25个小众的电子商务网站案例

对于电子商务网站来说,网站的设计和布局的可用性对于产品的销售会产生巨大的影响,另外就是产品带给访客的第一印象也很重要。一个设计良好的电子商务网站会为用户提供一个更愉快的体验,并让他们更容易浏览,搜索,并完成…

微软特邀讲师 徐雷 为受邀为世界500强达丰集团讲授《微软ASP.NET MVC5企业网站开发课程》...

老徐FrankXuLei 非常荣幸受邀为微软大企业客户世界500强达丰集团(广达电脑)信息化部讲授《微软ASP.NET MVC5企业网站开发课程》缘分2005年在公司篮球队和达丰集团打过友谊赛达丰集团全球第一大笔记本电脑制造商。上海60000多人.技术人员非常客气.企业非常…

Azure公开发布: 基本网站等级, 虚拟网络动态路由网关与点对站, 虚拟网络增强功能...

收到来自Azure的邮件,中国地区的3个功能公开发布,其实在这之前我已经测试了相关功能,并且已经将v-net to v-net ***发布为博文。 以下为邮件内容: 1. Azure基本网站等级 标准网站等级的客户将可以获得更多增值服务。 基本网站等级…

细数国内13家热门在线教育网站平台

2019独角兽企业重金招聘Python工程师标准>>> 在打车软件大战硝烟渐散时,在线教育却现升温之势。2013年至今,不断有人扎身在线教育之中创业,也有不少互联网企业在这个领域投资布局,其中包括BAT这三大巨头,在…

wordpress地址(URL)设置的网站是网站后台的地址,站点地址(URL)设置的是网站前台的地址...

2019独角兽企业重金招聘Python工程师标准>>> wordpress地址(URL)设置的网站是网站后台的地址,站点地址(URL)设置的是网站前台的地址。 如果希望前后台域名都是顶级域名的地址,那么可以把上下两个…

linux网站dos攻击自动封15分钟,宝塔面板Nginx配合shell脚本实现自动封禁IP 防御CC DDOS攻击方法...

宝塔面板现在很多小白用户使用的非常多,功能比较简单易用,但是其中防御功能较弱,内置的WAF并不能实现服务器级别的防火墙封IP,所以我们只能借用一下其中的功能,加上LINUX系统天然自带的SHELLIPTABLES防火墙来封禁IP宝塔…

【转】3.15网站维权:如何防止网站内容被剽窃

写在开头:网站内容被其它站点剽窃是建站过程中经常会遇到的问题,严重的侵权现象可以通过法律途径来解决,可一般的复制转载却无法禁止。网络虽然是开放的世界,但一些恶意转载的现象却令众多站长深恶痛绝却又束手无策,比…

html网页超链接百度等网站,零基础学HTML(超链接)

都知道超链接是什么吧?超链接就是从一个网页跳转到另一个网页,还可以从底部跳转到顶部,从而实现网页间的联系,把多个网页联系起来,构成网络。没有添加任何网页的超链接这是一个超链接这是超链接,里面的中文…

[转]Stimator:评估您的网站/博客的价值

转自:http://blog.bingo929.com/index.php 今天发现一个好看的网站,发现一篇有意思的文章“Stimator:评估您的网站/博客的价值”。试着测了一下自己的博克,居然值这么多美元,没想到。 试一试您的地址:Stimator转载于:h…

基于jquery网站左侧下拉菜单

网站左侧下拉菜单jQuery代码。这是一款蓝色风格的适合做后台下拉菜单代码。效果图如下&#xff1a; 在线预览 源码下载 实现的代码&#xff1a; <div class"container"><div class"leftsidebar_box"><div class"line"></…

网站服务架构

服务器划分 对于访问量大的网站而言&#xff0c;将网站的各个部分拆分分别部署到不同服务器上是很有必要的。例如将图片和web站点分开。一般而言&#xff0c;在网站的整个服务器部署上分为如下几种类型&#xff1a; 文件服务器&#xff1a;一般存储系统的相关图片和文件&#x…

我记录网站综合系统 -- 技术原理解析[1:我记录的整体框架的简介]

本文章的代码位置&#xff1a;整个wojilu源代码 我记录作为一个优秀的成熟的框架&#xff0c;包含了你所需要的很多很多功能&#xff0c;下面这个列表就是1.6版为止的大体功能。 [框架包括] 1、一个持久层框架 wojilu ORM2、一个依赖注入框架 wojilu IOC3、一个Web开发框架 wo…

10个很棒的学习Android 开发的网站(转)

看到江湖旅人 写的《10个很棒的学习iOS开发的网站 - 简书》&#xff0c;所以就忍不住写Android 啦&#xff0c;也希望对大家有帮助。我推荐的网站&#xff0c;都是我在学习Android 开发过程中发现的好网站&#xff0c;给初学者一些建议&#xff0c;少走一些弯路。 Android Deve…

转:ASP.NET 2.0:使用用户控件和定制的Web部件个人化你的门户网站

ASP.NET 2.0&#xff1a;使用用户控件和定制的Web部件个人化你的门户网站原著&#xff1a;Ted Pattison&#xff0c;Fritz Onion 翻译&#xff1a;汪泳 原代码下载&#xff1a;WebParts.exe (619KB)原文出处&#xff1a;ASP.NET 2.0 Personalize Your Portal with User Control…