我们在运营网站的时候,为了防止一些特定的目录被不怀好意的人尝试访问和利用漏洞,就需要在nginx配置禁止访问特定目录和目录下的所有文件,这样才会尽量保证网站的安全,那么如何修改nginx的配置文件才能实现呢?下面ITmemo小编就给大家介绍一下如何操作。
禁止访问特定后缀文件
location ~ \.(php|jsp|txt)$ {
deny all;
}
禁止访问某个目录下的php后缀文件
location /directory {
location ~ .*\.(php)?$ {
deny all;
}
}
禁止访问多个目录下的php后缀文件
location ~* ^/(directory1|directory2)/.*\.(php)${
deny all;
}
禁止访问目录或目录下文件
#禁止访问目录
location ^~ /test/ {
deny all;
}
#禁止访问目录下文件
location ^~ /test {
deny all;
}
nginx location的匹配语法
= 表示精确匹配
^~ 表示uri以某个字符串开头
~ 正则匹配(区分大小写)
~* 正则匹配(不区分大小写) !和!*分别为区分大小写不匹配及不区分大小写不匹配的正则
/ 任何请求都会匹配
匹配优先级: = > ^~ > /
温馨提示:以上配置方法貌似在windows服务器系统下nginx无效或者有bug,小编没有仔细研究,大家不妨试试。