Задать вопрос
@776166

Nginx на https –> Django на runserver –> DRF + swagger. Как заставить swagger ходить на https, а не на http?

Имеется subj.
Django==2.2.3
django-rest-swagger==2.1.2
djangorestframework==3.8.2


Всё закрыто nginx на https, который проксирует, как и положено для runserver на http, а входящий трафик http перенаправляет на https. Swagger генерируется так, что запросы должны ходить на http, что, естественно, зарубается браузером даже без вариантов отправить на http и быть перенаправленным на https.

Это как-то можно поправить, оставив для внешнего мира только https?
  • Вопрос задан
  • 287 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@776166 Автор вопроса
Разобрался.

В settings.py
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTOCOL', 'https')


В nginx
proxy_set_header        X-Forwarded-Protocol  $scheme;


Проблема была в том, что в интернете пишут неточно, а помимо копипасты ещё надо иногда думать.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы