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;
}
三、nginx location 匹配相關
= 表示精確匹配
^~ 表示uri以某個字符串開頭
~ 正則匹配(區分大小寫)
~* 正則匹配(不區分大小寫) !~和!~*分別爲區分大小寫不匹配及不區分大小寫不匹配的正則
/ 任何請求都會匹配
匹配優先級:
= > ^~ > /