1

我正在使用 gunicorn 运行一个 django 项目,我想使用 ssl 运行它,我在互联网上发现我需要这本字典 "{'X-FORWARDED-PROTOCOL': 'ssl', 'X-FORWARDED-SSL' : '在'}”。但我把它放在哪里?有没有办法在命令 gunicorn_django 上使用 ssl 运行它?我没有使用 nginx,我也不想使用。谢谢。

4

1 回答 1

5

更新:Gunicorn 从0.17.0 / 2012-12-25开始添加 SSL 支持。

原答案:

Gunicorn 本身不支持 SSL。有一个开放的拉取请求来添加它https://github.com/benoitc/gunicorn/pull/265X-FORWARDED-PROTOCOLandX-FORWARDED-SSL标头将由 Gunicorn 前面的代理(例如 Nginx)使用,该代理执行 SSL 终止。

使用 SSL 不需要使用 Nginx。您可以使用 Apache/mod_proxy 或 HAProxy 或任何其他支持 SSL 的代理服务器。即使不需要 SSL,在使用 Gunicorn 缓冲慢速客户端时,建议使用代理服务器http://gunicorn.org/deploy.html

尽管有许多 HTTP 代理可用,但我们强烈建议您使用 Nginx。如果您选择另一个代理服务器,则需要确保在使用默认 Gunicorn 工作程序时它缓冲慢速客户端。如果没有这种缓冲,Gunicorn 很容易受到拒绝服务攻击。您可以使用 slowloris 检查您的代理是否正常运行。

于 2012-07-19T20:41:50.953 回答