nginx 禁止浏览器(www.xxxxx.com.cn/test/)访问目录,容许本地去访问目录和目录中文件

location ^~ /test {php

    return 404;html

}  nginx

解释:location ^~ 匹配浏览器的域名 区分大小写正则表达式

         /test   域名后面跟着的目录名称(能够换成别的)浏览器

         return 404;也能够把 deny all 改换成 return 404,这样将返回 404 而不是 403 Forbidden,更有“欺骗性”dom

^ 和 ~  分别表明什么意思呢   为何他们就表明了url呢?jsp

  基本语法:location [=|~|~*|^~] /uri/ { … }
= 严格匹配。若是这个查询匹配,那么将中止搜索并当即处理此请求。
~ 为区分大小写匹配(可用正则表达式)   区分大小写匹配
!~为区分大小写不匹配                           不区分大小写匹配
~* 为不区分大小写匹配(可用正则表达式)  区分大小写不匹配
!~*为不区分大小写不匹配                          不区分大小写不匹配
^~ 若是把这个前缀用于一个常规字符串,那么告诉nginx 若是路径匹配那么不测试正则表达式。测试

扩展:
location ~* \.(txt|doc)$ {
               if (-f $request_filename) {
                  root /home/domain/public_html/test;
                  break;
                  }
               }

location ~* \.bat {url

  deny all;code

}

tip:对某些特定后缀名禁止访问
location /phpsysinfo/ {
                        allow  192.168.0.10;
                        deny    all;
                }

tips:对某个目录进行访问限制 除了指定ip外 所有拒绝访问:

location ~ ^/(uploads|images)/.*\.(php|php5|jsp)$ {

     deny all;

}

tips:在目录uploads、images目录下面的全部php、jsp都不能访