Подтвердить что ты не робот

Запуск стрельбы по https?

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

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

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

https://foo.com → [Public face proxy] → (https) → [внутренний сервер https://192...:8001]

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

4b9b3361

Ответ 1

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

Ответ 2

Массовый поздний ответ, но для других, кто сталкивается с этим, существует еще одна опция, использующая nginx в качестве "[Public front proxy]" выше.

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