Nginx禁止恶意User Agent

禁用一些User Agent可以节省一些流量也可以防止一些恶意的访问,尤其是部份搜索引擎爬虫,例如我们的网站就是一个地方性站点,没有必要被一些国外的搜索引擎爬虫索引,都可以禁掉,具体操作如下:

Nginx

1、编辑该文件:

# vi /usr/local/nginx/conf/nginx.conf

2、增加以下内容(示例):

if ($http_user_agent ~ "JikeSpider|Indy Library|Alexa Toolbar|bingbot|AskTbFXTV|AhrefsBot|CoolpadWebkit|Microsoft URL Control|YYSpider|DigExt|YisouSpider|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms|curl" )
{
return 403;
}
if ($request_method !~ ^(GET|HEAD|POST)$ ) {
 return 403;
 }
 if ($http_user_agent ~* (Java|Jullo) ) {
 return 444;
 }

有一些单词中间有空格,所以两边需要使用双引号,禁用了若干个搜索引擎爬虫,还有几个恶意灌水机等,可以分析日志根据情况屏蔽恶意的User Agent。

一条评论

  1. Nginx禁止恶意User Agent
    avatar
    Lv.1 1楼

    啦啦~前來支持一下~~很實用的文章~~
    PS:歡迎訪問AREFLY.COM~~~

    发表评论

  1. 😉
  2. 😐
  3. 😡
  4. 😈
  5. 🙂
  6. 😯
  7. 🙁
  8. 🙄
  9. 😛
  10. 😳
  11. 😮
  12. emoji-mrgree
  13. 😆
  14. 💡
  15. 😀
  16. 👿
  17. 😥
  18. 😎
  19. ➡
  20. 😕
  21. ❓
  22. ❗
  23. 67 queries in 0.094 seconds