Nginx禁止特定用户代理(User Agents)访问

凉白开 NginxNginx禁止特定用户代理(User Agents)访问已关闭评论26,0699字数 507阅读1分41秒阅读模式

Nginx可以通过各种方式来限制访问,例如NGINX基本Http认证allow/deny等等,这些都是前文提过的,今天来看看nginx如果通过用户代理来禁止访问。

user agent是什么?

用户代理是指浏览器,它的信息包括硬件平台、系统软件、应用软件和用户个人偏好。用户代理的能力和偏好可以认为是元数据或用户代理的硬件和软件的特性和描述;文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

不太好理解,简单来说告诉服务器你当前使用的是什么浏览器、工具等等。例如火狐、谷歌chrome、wget、curl。文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

如何禁止特定UA

我们不希望被使用wget或者curl来下载我的文件,怎么做呢?文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

编辑nginx配置文件,以下内容放在http配置段,那么整个nginx都生效。如果放到server里,那么一个域名生效,你放哪,哪就有效!文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

if ($http_user_agent ~* (curl) ) {
    return 404;
}

禁止多个UA文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

if ($http_user_agent ~* (wget|curl) ) {
return 404;
}

浏览器agent汇总:http://www.cnblogs.com/sink_cup/archive/2011/03/15/http_user_agent.html文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/ 文章源自运维生存时间-https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/

weinxin
我的微信
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
凉白开
  • 本文由 发表于 16/12/2015 01:00:45
  • 转载请务必保留本文链接:https://www.ttlsa.com/nginx/how-to-block-user-agents-using-nginx/