![nGinx - 拒绝与模式匹配的所有内容,但有一个例外](https://linux22.com/image/758893/nGinx%20-%20%E6%8B%92%E7%BB%9D%E4%B8%8E%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E7%9A%84%E6%89%80%E6%9C%89%E5%86%85%E5%AE%B9%EF%BC%8C%E4%BD%86%E6%9C%89%E4%B8%80%E4%B8%AA%E4%BE%8B%E5%A4%96.png)
我试图拒绝访问与我的应用程序根方向的特定模式匹配的任何内容,但我想允许一次匹配通过......
因此,我想拒绝根目录中对 .* 的所有请求,但如果请求是针对 .well-known/* 的,我想允许其通过。
所以我有:
location ~ /\. {
deny all;
}
我该如何允许一切 .well-known 作为例外?
答案1
您可以使用正则表达式负向预测功能(详细信息这里):
location ~ /\.(?!well-known).* {
deny all;
}
或者将 Richard Smith 的解决方案与第二个location
块一起使用。