Я использую NGINX в простом сценарии обратного прокси-сервера, обычно с переменной для определения имен хостов, чтобы он не зависал при запуске, если хост недоступен.
Вот что я обнаружил: при такой конфигурации трафик проксируется, но страницы не отображаются полностью — похоже, что некоторые библиотеки .js не загружаются.
resolver 192.168.86.1 valid=30s ipv6=off;
location /cam/ {
set $motion01 motion01;
proxy_set_header Host $host;
proxy_pass http://$motion01.lan/;
Если я удалю ipv6=off следующим образом, то получу ошибку 502 bad gateway, а также ошибку «host not resolve»:
resolver 192.168.86.1 valid=30s;
location /cam/ {
set $motion01 motion01;
proxy_set_header Host $host;
proxy_pass http://$motion01.lan/;
Но если я изменю его и вместо переменной буду использовать буквальное имя хоста, то все будет работать отлично:
set $motion01 motion01;
proxy_set_header Host $host;
#proxy_pass http://$motion01.lan/;
proxy_pass http://motion01.lan/;
Я не хочу использовать буквальное имя хоста, так как nginx не запустится, если хост недоступен во время запуска, но я не могу понять, что не так с этой конфигурацией.
Я пробовал включать и выключать IP6 на сервере, а также включать и исключать
listen [::]:443 ssl;
директива, все бесполезно. Это не было проблемой с более ранней версией nginx (не помню, какую я изначально использовал), но теперь это проблема с 1.14.2.2.
Приветствуются любые предложения!