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

代码4周前更新
5,692 0

nginx禁止直接访问目录或文件,如果不禁止,nginx会直接去下载web目录下文件,如果有配置文件,并可以直接暴露一些配置文件源代码。测试时要清理浏览器缓存,浏览器会缓存下载的文件。如果有类似配置文件,建议不要放在web目录下,会更加安全。

nginx-站点管理-xx网站设置-源文模式,或者到/etc/nginx/conf.d/default.conf的指定网站下添加如下代码

一、禁止访问某些后缀文件

1、禁止所有ini、conf、txt后缀的文件

location ~ \.(ini|conf|txt)$ {
deny all;
}

2、禁止指定某个栏目后缀php后缀的文件

location /wp-content/uploads {
location ~ .*\.(php)?$ {
deny all;
}
}

3、禁止指定多个栏目后缀为php的文件

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

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

#禁止访问目录

location ^~ /test/ {
deny all;
}

#禁止访问目录下文件

location ^~ /test {
deny all;
}56

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

© 版权声明

暂无评论

本文暂时没有评论,来添加一个吧(●'◡'●)