Пример использования
Нам нужно перенаправить на текущий веб-сайт (ip1 - https://host.com/path ) с нового сервера (ip2) на котором будет размещен другой веб-сайт в корневом каталоге ( https://host2.com/ ). В конце концов, этот последний веб-сайт будет размещен как https://host.com/ , что означает, что у нас будет один веб-сайт на https://host.com/ (размещенный на ip2) и еще один на https://host.com/path (который размещен на ip1)
NGINX работает на сервере ip2.
Текущий веб-сайт принимает запросы только от хоста. com
Текущая конфигурация
Это то, что мы пытаемся сделать прямо сейчас на сервере ip2
location /path/ {
proxy_pass https://ip1/path;
proxy_redirect off;
proxy_set_header Host host.com;
}
Если мы попытаемся получить доступ к https://host2.com/path , конфигурация будет работать хорошо. Когда мы меняем DNS, чтобы установить ip2 как host.com, а затем, если мы пытаемся получить доступ к https://host.com/path , NGINX обрабатывает запрос, но тогда у нас есть бесконечные 302 перенаправления на https://host.com/path (пока браузер не остановит процесс)
У вас есть идеи, как решить эту проблему?
Большое спасибо!
Мы наконец нашли конфигурацию для решения этой проблемы:
location /path/ {
proxy_pass https://ip1/path/;
proxy_redirect off;
proxy_set_header Host host.com;
}
Следите за протоколом (https) и завершающий символ косой черты.
Мы переместили DNS для перенаправления host.com на ip2, и он работает как шарм!