某些网站零碎须要用户上传图片等文件到某些目录下,不免程序有些破绽,导致用户上传了php、cgi等等可执行的文件,导致网站陷入十分尴尬的地步. 此时咱们能够通过nginx来禁止用户拜访这些目录下的可执行文件。如果不禁止,nginx会间接去下载web目录下文件,如果有配置文件,并能够间接裸露一些配置文件源代码。测试时要清理浏览器缓存,浏览器会缓存下载的文件。如果有相似配置文件,倡议不要放在web目录下,会更加平安。

<!-- more -->

禁止拜访特定后缀文件

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以某个字符串结尾

~ 正则匹配(辨别大小写)

~ 正则匹配(不辨别大小写) !~和!~别离为辨别大小写不匹配及不辨别大小写不匹配的正则

/ 任何申请都会匹配

匹配优先级: = > ^~ > /

nginx配置禁特定门路下的反向代理
nginx配置禁止拜访目录或禁止拜访目录下的文件
nginx跨域解决
带你深刻理解nginx根本登录认证(蕴含配置步骤)