1. 首页
  2. WEB服务
  3. Nginx

nginx禁止IP或目录访问

1.nginx禁止访问所有.开头的隐藏文件设置
location ~* /.* {
 deny all;
 }

2.nginx禁止访问目录
例如:禁止访问path目录
location ^~ /path {
 deny all;
 }
可以把path换成实际需要的目录,目录path后是否带有"/",带"/"只禁止访问目录,不带"/"禁止访问目录中的文件

3.nginx针对单个域名禁止IP或IP段访问域名
  server {
 listen 80 ;
 server_name www.safecdn.cn;
 deny 192.168.100.15; #屏蔽单IP
 deny 192.168.100.0/24; #屏蔽IP段后跟掩码位
 allow 192.168.101.0/24; #allow IP地址是只允许某IP地址或者ip段访问

 location / {
 proxy_redirect off;
 proxy_set_header Connection "";
 proxy_set_header Host $http_host;
 proxy_set_header Client-ip $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 if ($Host ~* [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+) {
 return 403;
 }

4.nginx针对全局屏蔽IP或IP段
可以利用nginx的ngx_http_access_module模块设置允许/禁止哪些ip或ip段
 在配置文件放在nginx的conf目录下面,命名为blocksip.conf:
 在nginx的配置文件nginx.conf中加入:include blocksip.conf;
 重启一下nginx的服务:/usr/local/nginx/sbin/nginx -s reload 
 就达到了nginx禁止IP的效果
 blocksip.conf:的格式还有许多种,可以配置只允许的IP访问或者IP段访问:
 deny IP;
 allow IP;
 # block all ips
 deny all;
 # allow all ips
 allow all;

原创文章,作者:赛福,如若转载,请注明出处:http://www.safecdn.cn/webserver/nginx/2016/08/nginx-deny-ip.html

联系我们

在线咨询:点击这里给我发消息