[英]Nginx 403 Forbidden Even After Setting The Permission
我想為我的域獲取Letsencrpyt SSL。 該過程的一部分是,在獲得證書之前需要對站點進行授權。
我創建了文件夾./well-known
並運行了要求我得到的命令;
Nginx 403 forbidden.
我正在使用nginx / 1.10.0(Ubuntu)
我chown
了目錄並授予它755
但還是一樣。 在下面的目錄中查看權限。
namei -l /var/www/example.com/.well-known
f: /var/www/example.com/.well-known
drwxr-xr-x root root /
drwxr-xr-x root root var
drwxr-xr-x root root www
drwxr-xr-x cman sudo example.com
drwxr-xr-x cman sudo .well-known
我還在/.well-known
文件夾中創建了一個working.html
文件,並加載了example.com/.well-known/working.html
,我得到了相同的403 Forbidden。
Nginx.conf
upstream kip_app_server {
# fail_timeout=0 means we always retry an upstream even if it failed
# to return a good HTTP response (in case the Gunicorn master nukes a
# single worker for timing out).
server unix:/var/www/example.com/src/run/trav.sock fail_timeout=0;
}
server {
listen 80;
server_name example.com www.example.com;
location = /favicon.ico { access_log off; log_not_found off; }
access_log /var/www/example.com/logs/access.log;
error_log /var/www/example.com/logs/nerror.log;
charset utf-8;
client_max_body_size 75M;
location /static/ {
alias /var/www/example.com/src/static/;
}
location /media/ {
alias var/www/example.com/src/media/;
}
location ~ /\.well-known {
allow all;
alias /var/www/example.com/.well-known/;
}
location / {
include proxy_params;
proxy_pass http://kip_app_server;
#proxy_set_header X-Forwarded-Host $server_name;
#proxy_set_header X-Real-IP $remote_addr;
}
}
如果您不使用別名,您的代碼將起作用。
嘗試這個:
location ^~ /.well-known {
allow all;
alias /var/www/example.com/.well-known/;
}
或這個:
location ^~ /.well-known {
allow all;
auth_basic off;
alias /path/to/.well-known/;
}
別名時,需要^。
這是Nginx特定於其執行匹配行為的行為。 這里有關於匹配邏輯和警告的詳細文章,令人困惑: https : //github.com/letsencrypt/acme-spec/issues/221
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.