nginx屏蔽某一ip的访问

假设我们想禁止访问nginx次数最多的ip访问我们的网站
我们可以先查出那个ip访问次数最多

awk '{print $1}' nginx.access.log |sort |uniq -c|sort -n

在nginx的配置文件的同一文件夹下,新建一个deny.conf文件,
该文件内容为
deny ip;
ip为访问量最多的ip,注意后面有;,否则重启nginx报错
接着配置nginx配置文件
在http{}内或者server{}内添加语句
include deny.conf;
重启nginx,该ip无法访问nginx

ip可以是单独ip,也可以是一段ip
例如
192.168.1.10 单独ip
192.168.1.10/24 一段ip

当然也可以选择设置防火墙不对某一ip开放80端口

也可以这样配置,只允许某个ip访问
目标:只允许100ip访问
里面的修改这里的内容修改的内容为
Order allow,deny
Allow from 192.168.1.100`
重启服务器,只有100ip可以访问,其他ip会出错

原文地址:https://www.cnblogs.com/biaopei/p/7730467.html