Django 让';s使用uWSGI加密

Django 让';s使用uWSGI加密,django,ssl,nginx,uwsgi,lets-encrypt,Django,Ssl,Nginx,Uwsgi,Lets Encrypt,我正在尝试为我的域安装SSL证书。然而,这些说明似乎假设nginx是唯一的服务器。我将nginx与uwsgi一起使用。我对这两个都不熟悉。我不相信uwsgi有“webroot”(?) 我的django应用程序由/home/me/myapp提供。我在那里创建了.well-known目录,如下所示:/home/me/myapp/.well-known 使用此命令: sudo certbot certonly --webroot --webroot-path=/home/me/myapp -d mya

我正在尝试为我的域安装SSL证书。然而,这些说明似乎假设nginx是唯一的服务器。我将nginx与uwsgi一起使用。我对这两个都不熟悉。我不相信uwsgi有“webroot”(?)

我的django应用程序由
/home/me/myapp
提供。我在那里创建了
.well-known
目录,如下所示:
/home/me/myapp/.well-known

使用此命令:

sudo certbot certonly --webroot --webroot-path=/home/me/myapp -d myappdomain.com -d www.myappdomain.com
我得到这个错误:

   Domain: www.myappdomain.com
   Type:   unauthorized
   Detail: Invalid response from
   http://www.myappdomain.com/.well-known/acme-challenge/HOjaeQfDlYQzAYfwGLltammjg6kMnwChV-Bc9BL2bSA:

如果我在NGINX后面有uWSGI,如何正确地为
.well
目录提供服务器?
NGINX可以配置为serve
.well
,这样就不需要关心使用uWSGI或其他代理服务器提供服务

此配置将有所帮助。它是一个80端口,提供
。著名的
文件,来自location root,与certbot的webroot插件相同。其他请求将重定向到域的HTTPS,如需要

server {
    listen 80;
    server_name myappdomain.com www.myappdomain.com;

    location /.well-known/ {
        root /home/me/myapp;
        break;
    }

    location / {
        return 301 https://$server_name$request_uri;
    }
}

NGINX可以配置为serve
。众所周知的
,这样就不需要关心uWSGI或其他代理服务器的服务

此配置将有所帮助。它是一个80端口,提供
。著名的
文件,来自location root,与certbot的webroot插件相同。其他请求将重定向到域的HTTPS,如需要

server {
    listen 80;
    server_name myappdomain.com www.myappdomain.com;

    location /.well-known/ {
        root /home/me/myapp;
        break;
    }

    location / {
        return 301 https://$server_name$request_uri;
    }
}

我也有同样的问题,我就是这样解决的

location /.well-known {
    alias /home/user/webapp/.well-known;
}
在我的服务器中,
.well-known
位于
/var/www/html/。well-known
因此,在我的
nginx
config文件中

location /.well-known {
    alias /var/www/html/.well-known;
}

通过
sudo find/-type d-name.well'
验证
.well-known
的位置。well-known'

我也遇到了同样的问题,这就是我解决问题的方法

location /.well-known {
    alias /home/user/webapp/.well-known;
}
在我的服务器中,
.well-known
位于
/var/www/html/。well-known
因此,在我的
nginx
config文件中

location /.well-known {
    alias /var/www/html/.well-known;
}
通过
sudo find/-type d-name'.well'
验证
.well-known
的位置