Nginx中配置過濾爬蟲的User-Agent的簡單方法
過去寫博客的時候經常出現(xiàn)服務器宕機,網頁全部刷不出來,但是Ping服務器的時候又能Ping通。登錄SSH看了下top,驚呆了,平均負載13 12 8。瞬間覺得我這是被人DDOS了么?看了下進程基本上都是php-fpm把CPU給占了,去看下日志吧。。。
一看不得了,基本上都是被一個User Agent叫"YisouSpider"的東西給刷屏了,一看就不知道是哪的蜘蛛,太沒節(jié)操了。
找到根目錄配置區(qū),增加User Agent過濾判斷語句,發(fā)現(xiàn)叫"YisouSpider"的直接返回403
注1:如果需要增加多個過濾,這樣做
($http_user_agent ~* "Spider1|Spider2|Spider3|Spider4")
,中間用|隔開就行了
注2:如果你是用的是子目錄博客,像我的一樣,那么要找到 "location /blog/" 這樣的區(qū)段去修改
location / { ......其它配置 if ($http_user_agent ~* "YisouSpider") { return 403; } }
配置完成wq保存后reload一下nginx,然后使用以下命令自我測試,地址自己改。沒裝curl的我就沒辦法了,自己apt或者yum裝一個吧,神器來的。
curl -I -A "YisouSpider" www.slyar.com/blog/
看到返回403就可以了,說明配置成功
PS:一些常見爬蟲的User-Agent,這些一般就不要過濾了~
百度爬蟲
* Baiduspider+(+http://www.baidu.com/search/spider.htm”)
google爬蟲
* Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
* Googlebot/2.1 (+http://www.googlebot.com/bot.html)
* Googlebot/2.1 (+http://www.google.com/bot.html)
雅虎爬蟲(分別是雅虎中國和美國總部的爬蟲)
*Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html”)
*Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp”)
新浪愛問爬蟲
*iaskspider/2.0(+http://iask.com/help/help_index.html”)
*Mozilla/5.0 (compatible; iaskspider/1.0; MSIE 6.0)
搜狗爬蟲
*Sogou web spider/3.0(+http://www.sogou.com/docs/help/webmasters.htm#07″)
*Sogou Push Spider/3.0(+http://www.sogou.com/docs/help/webmasters.htm#07″)
網易爬蟲
*Mozilla/5.0 (compatible; YodaoBot/1.0; http://www.yodao.com/help/webmaster/spider/”; )
MSN爬蟲
*msnbot/1.0 (+http://search.msn.com/msnbot.htm”)
相關文章
Nginx配置React項目Url后直接輸入路由路徑時報404問題的解決
這篇文章主要給大家介紹了關于Nginx配置React項目Url后面直接輸入路由路徑時報404問題的解決方法,文中通過示例代碼將解決的方法介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。2017-11-11Nginx?location和proxy_pass配置示例詳解
這篇文章主要介紹了Nginx?location和proxy_pass配置的相關資料,本文詳細探討了Nginx配置中`location`和`proxy_pass`指令的不同組合方式及其對請求轉發(fā)路徑的影響,通過列舉多種組合,展示了`location`匹配目錄與`proxy_pass`地址路徑如何相互作用,需要的朋友可以參考下2024-11-11nginx location中uri的截取的實現(xiàn)方法
這篇文章主要介紹了nginx location中uri的截取的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04nginx?添加http_stub_status_module模塊
本文主要介紹了nginx?添加http_stub_status_module模塊,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-05-05Linux下Nginx負載均衡多個tomcat配置的方法步驟
這篇文章主要介紹了Linux下Nginx負載均衡多個tomcat配置的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04