使用 nginx 和 uwsgi 为 django 自动化 Lets Encrypt

Automate Lets Encrypt for django with nginx and uwsgi

我担心如果我知道要寻找什么,这个问题可能会非常简单地回答,所以如果这已经得到解决,我深表歉意

我已经使用 nginx 和 uwsgi 为 Django 应用程序设置了生产 Web 服务器。它安装了 let's encrypt SSL 证书,现在我想自动更新。

我使用本文中引用的方法添加证书:https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04 通过将 .well-known 目录添加到服务器块。

location ~ /.well-known {
            allow all;
    }

我试图保留这个但是 /.well-known 现在是 403 禁止从 nginx 添加服务器配置的其余部分(在下面提供)

谁能告诉我我做错了什么或如何解决这个问题?

这是服务器配置文件:

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name www.website.co.uk;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2 default_server;
    listen [::]:443 ssl http2 default_server;
    include snippets/ssl-website.co.uk.conf;
    include snippets/ssl-params.conf;

    location /.well-known/ {
        root /home/user/website;
        allow all;
     }

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /home/user/website;
    }

    location / {
        include         uwsgi_params;
        uwsgi_pass  unix:/home/user/website/website.sock;
    }
}

提前致谢。我对此还是很陌生,正在努力学习。

我遇到了类似的问题。这个答案是我的解决方案。

希望这对你也有帮助!