Nginx 位置 ~/\.ht

Nginx 位置 ~/\.ht

locationNginx 中以下块的含义是什么?

location ~ /\.ht {
    deny all;
}

我问,因为我有一个小型 WordPress 网站,我从其配置中删除了这个块并重新启动了服务器,但该网站似乎仍然工作正常。

答案1

location ~ /\.ht {
    deny all;
}

该指令告诉网络服务器拒绝对以.ht根目录 ( /) 开头的任何文件的所有传入请求。

波浪号~告诉 nginx 使用正则表达式。

因此,不会提供 、 等.htaccess文件。.htpasswd

注意:点前面的反斜杠 ( \) 只是为了转义点( 、 等前面的点htaccesshtpassword

答案2

假设您的网站是 example.com。具体位置将是example.com/.ht.因此该deny all指令将拒绝所有对 的请求example.com/.ht*。 (* 表示任何后续字符串)

~nginx要进行基于正则表达式的匹配。/是您网站的根目录。\是转义字符。它说按字面解释.而不是作为正则表达式的一部分。

相关内容