Nginx 禁止直接访问目录或文件
本文最后更新于 140 天前,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Nginx禁止直接访问目录或文件

前言

Nginx 需要设置禁止直接访问目录或文件,如果不禁止,Nginx 会直接去下载 web 目录下文件,如果有配置文件,则可以直接暴露一些配置文件源代码。

禁止方法

禁止访问某些后缀文件

  1. 禁止所有 iniconftxt 后缀的文件

    location ~ \.(ini|conf|txt)$ {
    deny all;
    }
  2. 禁止指定某个目录后缀 php 后缀的文件

    location /wp-content/uploads {
    location ~ .*\.(php)?$ {
    deny all;
    }
    }
  3. 禁止指定多个目录后缀为 php 的文件

    location ~* ^/(css|uploads)/.*\.(php)${
    deny all;
    }

禁止访问目录或目录下文件

  1. 禁止访问目录

    location ^~ /test/ {
    deny all;
    }
  2. 禁止访问目录下文件

    location ^~ /test {
    deny all;
    }

Nginx location 匹配相关

  • = 表示精确匹配
  • ^~ 表示uri以某个字符串开头
  • ~ 正则匹配(区分大小写)
  • ~* 正则匹配(不区分大小写) !~和!~*分别为区分大小写不匹配及不区分大小写不匹配的正则
  • / 任何请求都会匹配
  • 匹配优先级:= > ^~ > /

Nginx 配置图片直接下载不打开

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
    add_header Content-Disposition attachment;
}
版权归属: E家之长
本文链接: https://www.5iehome.cc/archives/nginx-deny-to-access-directory-or-file.html
许可协议: 本文使用《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》协议授权
暂无评论

发送评论 编辑评论


上一篇
下一篇