3

我有一个在服务器上运行的 django 应用程序。我想使用 let's encrypt 来提供加密连接。我可以使用他们的 ACME 客户端的独立选项,但我不想停止我的服务器,这是我必须做的。

所以有 webroot 选项,它与我已经运行的网络服务器(nginx)一起工作。在这种情况下,Django 会处理请求。我的问题是,在 django 方面应该如何运行(记住几个月的自动更新)?

4

2 回答 2

2

我不知道其他人使用什么设置,但我通常使用 Nginx 提供静态内容和 Gunicorn 作为应用程序服务器来设置 Django 应用程序。人们普遍认为 Django 应用程序通常使用这种两个 Web 服务器设置。使用 Nginx 设置 Let's Encrypt 的标准说明对我来说效果很好。

或者 Digital Ocean 也有很好的指南

编辑:看起来 Nginx 可以进行“优雅”重新加载,只需更新配置而无需停机。对于 Debian 或 Ubuntu pre Systemd,这将是sudo service nginx reload,而对于具有 Systemd 的发行版,命令是sudo systemctl reload nginx.service

于 2016-02-27T19:11:58.457 回答
1

万一其他用户像我从谷歌那样来,这就是我改善这种情况的方法:

ACME在运行Django应用程序时为 Let's Encrypt创建挑战时,我对自己的选择不满意。所以,我推出了自己的解决方案并创建了一个 Django 应用程序!基本上,您可以将您的ACME挑战作为另一个对象来管理,并且该应用程序将生成正确的端点 URL。

是的,您正在安装一个应用程序,这意味着对您的应用程序进行部署/更新,但是一旦您完成了,从长远来看,管理您的挑战要容易得多。

只需pip install django-letsencrypt按照README您的方式进行操作即可。

于 2016-12-25T08:08:38.170 回答