Я использую nginx на centos 7.
Я выполняю обратное проксирование удаленного сервера nodejs в той же локальной сети к корню nginx / согласно приведенному ниже:
location / {
proxy_pass http://192.168.1.104:3000/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Это работаетотлично подходит для обслуживания моего веб-сайта - все внешние запросы на порт 80 переписываются для использования https, который был настроен в nginx, например, nginx перенаправляет любые входящие http-запросы в https и обрабатывает перезаписи и переадресацию, так что содержимое nodejs подается через ssl, даже если sslне был настроен в приложении узла.
например, мой сайт может быть доступен по адресу https://example.com
. Теперь я хочу реверсировать прокси другое приложение nodejs, чтобы оно отображалось в месте с префиксом https://example.com, например:https://example.com/node2/
Я пытался использовать приведенную ниже конфигурацию для сервера второго узла ...
location /node2/ {
proxy_pass http://192.168.1.100:3000/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Когда я загружаю https://example.com/node2/ url, HTML-кодотображается корневая страница сервера второго узла, но ни одна из файлов css, js или images не загружается, поэтому страница не выглядит или не работает должным образом, и я вижу следующее в консоли браузера ...
Смешанный контент: Страница в 'https://example.com/node2/' была загружена по HTTPS, но запросил небезопасный образ' http://192.168.1.100:3000/assets/graphics/logo.png'. Этот контент также должен обслуживаться по HTTPS.
и
Не удалось загрузить ресурс: net :: ERR_CONNECTION_CLOSED https://192.168.1.100:3000/assets/css/styles.min.css
для ресурсов css и js ... так что, похоже, перенаправление не выполняется дляресурсы, а также любые ссылки на html-странице не показывают суффикс / node2 / при наведении курсора мыши или когдаcked, поскольку страница пытается загрузить ресурс из https://example.com вместо https://example.com/node2/
Возможно ли на самом деле делать то, что я хочу, с точки зрения обратного прокси-сервера в двух местах, и может ли кто-нибудь указать мне направильное направление, как я могу получить эту работу по мере необходимости?