Торнадо HTTPS вопросы
Я пытаюсь переместить мой существующий http-сервер для использования https. Я знаю, что я должен сначала получить сертификат SSL (в процессе).
В настоящее время моя реализация опирается на ряд процессов в бэкэнде, работающих на портах 8000, 8001, 8002, 8003
У меня есть nginx на внешнем интерфейсе, который направляет запросы http в циклическом порядке к этим портам. Если я включу https на бэкэнд-портах т.е. 8000 - 8003 С:
HTTPServer(applicaton, ssl_options=ssl_ctx)
И я настроил nginx с параметрами SSL для прослушивания на 443. Это все, что мне нужно сделать.
У меня также есть настройка обратного прокси-сервера nginx для работы с соединениями через веб-сокеты с теми же портами. Изменяет ли что-то переход на https, кроме того, что теперь необходимо подключиться к WSS вместо WS в javascript?
Нужно ли когда-либо устанавливать http-соединения? Я хочу перейти на чисто https без какого-либо пересечения с http. Это нормально и возможно?
Существуют различные другие варианты, перечисленные в документации торнадо:
Если xheaders имеет значение True, мы поддерживаем заголовки X-Real-Ip/X-Forwarded-For и X-Scheme/X-Forwarded-Proto, которые переопределяют удаленный IP и схему / протокол URI для всех запросов. Эти заголовки полезны при запуске Tornado за обратным прокси или балансировщиком нагрузки. Аргумент протокола также может быть установлен на https, если Tornado запускается за прокси-сервером для декодирования SSL, который не устанавливает один из поддерживаемых заголовков.
Может кто-нибудь объяснить, что они делают, и если мне нужно о них беспокоиться?
Кроме того, когда я ввожу www.example.com на веб-страницу, как браузер узнает, что это https, и подключиться к порту 443 вместо порта 80? Это определено в таблицах маршрутизации на DNS для моего сайта?