我在我的nginx配置中得到了这个:
location ~ /\. {
deny all;
}
location /.well-known/ {
allow all;
}
但我仍然无法访问http://example.com/.well-known/acme-challenge/taUUGC822PcdnCnW_aADOzObZqFm3NNM5PEzLNFJXRU
。如何允许只访问那个点目录?
答案 0 :(得分:24)
您有正则表达式位置和前缀位置。除非^~
与前缀位置一起使用,否则正则表达式位置优先。尝试:
location ~ /\. {
deny all;
}
location ^~ /.well-known/ {
# allow all;
}
有关详细信息,请参阅this document。
答案 1 :(得分:9)
我会使用优化代码:
location ~ /\.(?!well-known).* {
deny all;
}
所有点都被拒绝,除了.well-已知文件夹