Запуск Gunicorn на https? - PullRequest
       26

Запуск Gunicorn на https?

32 голосов
/ 13 сентября 2011

У нас есть несколько настроек Django, которые проходят через прокси-сервер (Apache и Nginx), которые в конечном итоге пробиваются к фактической среде исполнения Django.

Нам нужно, чтобы HTTPS заканчивался до конца, даже когда оннаша сеть.Мы пересматривали Gunicorn из-за его успеха и производительности в других наших установках, но нам нужно было проверить согласованность HTTPS от начала до конца.

Наша топология такова:

https://foo.com -> [Общедоступный прокси-сервер] -> (https) -> [внутренний сервер https://192. ..: 8001]

Как настроить Gunicorn для прослушивания по HTTPSс самозаверяющим сертификатом?

Ответы [ 2 ]

64 голосов
/ 04 января 2013

Gunicorn теперь поддерживает SSL, с версии 17.0 .Вы можете настроить его на прослушивание https следующим образом:

$ gunicorn --certfile=server.crt --keyfile=server.key test:app

Если вы использовали --bind для прослушивания порта 80, не забудьте изменить порт на 443 (порт по умолчанию для соединений HTTPS).Например:

$ gunicorn --certfile=server.crt --keyfile=server.key --bind 0.0.0.0:443 test:app
17 голосов
/ 23 января 2012

Сильно поздний ответ, но для всех, кто сталкивался с этим, есть другая опция, использующая nginx в качестве «[публичного прокси-сервера]» выше.

Настройте nginx для обработки входящего трафика SSL через порт 443, а затем proxy_pass для gunicorn на внутреннем порту. Внешний трафик зашифрован, и трафик между nginx и gunicorn все равно не выставляется. Я нахожу это очень простым в управлении.

...