Поддержка HTTPS на сервере Node.js или обратный прокси-сервер для HTTPS - PullRequest
0 голосов
/ 11 мая 2018

Я пишу приложение Node.js с открытым исходным кодом, которое реализует HTTP-сервер для вызовов API. Поддерживать HTTPS в Node.js не сложно, но это добавляет немного сложности и случаев, о которых вам нужно подумать:

  • Путь к ключу и сертификат должен быть настраиваемым => Дополнительные настройки / документация
  • Приложение должно обрабатывать ошибки, если ключ и сертификат отсутствуют или неправильный путь => Дополнительный код и тест
  • Образ Docker должен передать внешний ключ и сертификат приложению, запущенному в контейнере => Дополнительный код и документация

Это похоже на изобретение колеса. Я лично использую обратный прокси-сервер, который обрабатывает HTTPS-часть всех моих сайтов. Все серверы в фоновом режиме - только HTTP.

Можно ли требовать обратный прокси-сервер или лучше поддерживать HTTPS напрямую, поскольку большинство пользователей не используют обратный прокси-сервер? Каковы общие настройки сервера и рекомендуемый способ при написании приложения Node.js с открытым исходным кодом? Как сделать так, чтобы большинству пользователей было проще использовать мое приложение?

1 Ответ

0 голосов
/ 11 мая 2018

Обратный прокси-сервер предпочтителен для большинства сценариев, поскольку мы можем использовать безопасность, балансировку нагрузки, управление кэшем и т. Д. Также мы можем использовать для целей ведения журнала, чтобы мы могли поддерживать уровень безопасности для всех операций сервера и данных за этим прокси. Как вы упомянули, вам нужно будет написать еще несколько строк кода, но система останется более мощной. Я рекомендую иметь обратный прокси-сервер, чтобы сделать его более надежным и надежным.

...