Nginx 禁止访问某个目录或文件的设置方法

如果基于WEB根目录下,要禁止用户访问/config目录,或者要禁止用户访问/config.ini(ZF常用INI,不过建议还是放到WEB目录以外的地方),可以通过location进行配置,返回403或者404等

复制代码代码如下:

location = /config/ {
return 404;
}
location =/config.ini{
return 404;
}

这样只能禁止访问 http://www.jb51.net/path/
复制代码代码如下:

location = /path/ {
return 404;
}

禁止访问 http://www.jb51.net/path/test.php
复制代码代码如下:

location ^~ /test
{
deny all;
}
可能test要换成path.
这样就搞定了

对某些特定后缀名禁止访问
location ~* .(txt|doc)$ {
if (-f $request_filename) {
root /home/domain/public_html/test;
break;
}
}
对某个目录进行访问限制:
location /phpsysinfo/ {
allow 192.168.0.10;
deny all;
}


首先建立下面的配置文件放在nginx的conf目录下面,命名为blocksip.conf:

deny 95.105.25.181;

保存一下。

在nginx的配置文件nginx.conf中加入:include blocksip.conf;

重启一下nginx的服务:/usr/local/nginx/sbin/nginx -s reload 就可以生效了。

blocksip.conf:的格式还有许多种,可以配置只允许的IP访问或者IP段访问:

deny IP;

allow IP;

#block all ips
deny all;

#allow all ips
allow all;

其中网段的写法是这样的:192.168.1.0/24这样的形式。

deny 192.168.1.11;
deny 192.168.1.123;
deny 10.0.1.0/24;

如果你想实现这样的应用,除了几个IP外,其他全部拒绝,
那需要你在ip.balcklist中这样写

allow 1.1.1.1;
allow 1.1.1.2;
deny all;

单独网站屏闭IP的方法:

在server"{}",在这个大括号内加入deny IP地址是限制某IP地址访问;allow IP地址是只允许某IP地址访问;

#屏蔽单个IP的命令是
deny 123.45.6.7
#封整个段即从123.0.0.1到123.255.255.254的命令
deny 123.0.0.0/8
#封IP段即从123.45.0.1到123.45.255.254的命令
deny 124.45.0.0/16
#封IP段即从123.45.6.1到123.45.6.254的命令是
deny 123.45.6.0/24

你可能感兴趣的:(nginx禁止访问某个目录)