NodeJS + CouchDB: миграция с HTTP на HTTPS - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть следующие настройки:

  • сервер Windows, к которому я подключаюсь через удаленный рабочий стол;
  • на этом сервере я перемещаю папку www моего ionic / node.jsproject;
  • этот сервер работает как веб-сервер через http на порт 80;
  • этот веб-сайт использует базу данных couchdb на порту 5984.

Теперь япытаясь перенести всю мою систему на https.

Просто, чтобы попробовать, я сделал SSL-сертификат, который я сам подписал (когда все заработает, я куплю соответствующий SSL-сертификат).Теперь, с сертификатом, я могу получить доступ к веб-сайту на

https://www.mywebsite.it:3000/

Но у меня есть следующие проблемы:

  • мой браузер продолжает обнаруживать сайт как небезопасный, и я должен авторизовать его перед доступом.Я думаю, это потому, что SSL самоподписан
  • Если я открою инструменты разработчика Chrome, я получу следующее сообщение: «Смешанный контент: страница в« »была загружена через HTTPS, но запросил небезопасную конечную точку XMLHttpRequest»'. Этот запрос был заблокирован; контент должен быть передан по HTTPS. "Я должен авторизовать его в Chrome с помощью следующей кнопки

enter image description here

Как решить эту проблему?Очевидно, мне бы хотелось, чтобы пользователям не приходилось авторизовывать столько вещей.

1 Ответ

0 голосов
/ 23 февраля 2019

Я запускаю серверы в Ubuntu, а не в Windows, но один из способов решить эту проблему - использовать Nginx на вашем сервере в качестве обратного прокси-сервера.Существует ряд руководств, которые помогут вам настроить Nginx с Let's Encrypt (бесплатные сертификаты SSL), чтобы HTTPS-соединения с вашим сервером переходили к Nginx через порт 443, а затем Nginx перенаправлял запросы на порт 80 для вашегосуществующий веб-сервер.

Если к CouchDb нужно обращаться из Интернета, а не только из Node.js, вы можете использовать Nginx для перенаправления входящих запросов CouchDb с порта 443 на порт 5984.

Конечно, вы также можетевозможность настроить любой веб-сервер, который вы уже используете в качестве обратного прокси.Но использование Nginx - это сложный путь, с большим количеством справок / советов по установке и настройке здесь и в других местах.

...