如何在不停止服务器的情况下在django应用程序后面使用let加密?

时间:2016-02-27 19:07:26

标签: django lets-encrypt

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

因此,有一个webroot选项,可以与我的allready运行webserver(nginx)一起使用。在这种情况下,Django会处理请求。我的问题是,在django方面应该如何运行(保持几个月的自动更新)?

2 个答案:

答案 0 :(得分:2)

我不知道其他人使用的设置,但我通常使用Nginx提供静态内容和Gunicorn作为应用服务器来设置Django应用。人们普遍认为Django应用程序通常使用这种两种Web服务器设置。使用Nginx设置“让我们加密”的标准说明对我来说很好。

或者Digital Ocean也有很好的guide

编辑:看起来Nginx可以做一个优雅的"重新加载只更新配置,没有停机时间。对于Debian或Ubuntu pre Systemd,这将是sudo service nginx reload,而对于使用Systemd的发行版,命令为sudo systemctl reload nginx.service

答案 1 :(得分:1)

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

我在运行ACME应用程序时为Let's Encrypt创建Django挑战时,我对我的选项不满意。 So, I rolled my own solution and created a Django app!基本上,您可以将ACME个问题作为另一个对象进行管理,应用程序将生成正确的终点网址。

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

只需pip install django-letsencrypt并按照README即可。