Nginx禁止访问目录或文件

发布于 2015-10-24 作者 [重庆SEO]

更新于 2016-07-19

我在使用apache的时候比较注意禁止目录访问等安全问题。可最近把博客切换到nginx的时候就漏掉某些文件的处理了。比如之前.htaccess文在在apache是禁止访问的。可nginx里面是可以访问到的,会造成敏感文件的资料外泄。容易被利用。

nginx禁止访问所有.开头的隐藏文件

location ~* /.* {
 deny all;
} 

deny all也可以换成return 404;以及其他状态码。

禁止对config目录的访问

location ~* /config {
 return 404
} 

目录config后带"/"只禁止访问目录,不带"/"禁止访问目录中的文件

nginx禁止访问目录时显示目录列表

autoindex off;
autoindex off 位置影响
http中,对所有站点有效;
Server中,对当前站点有效;
Location中,只对当前目录有效。

--2016-07-19补充------------------

还有种批量的方法,可自行扩展

###------------------------------------------------------------
### Nginx 阻止访问指定特征的目录或url
### <seonoco.com> update:2016-07-19
###------------------------------------------------------------
if ( $request_uri ~* /(etc|fckeditor|editor|plus|bak|backup|wap|new|old|install|etc|include|wordpress|bin)/) {
 return 444;
}