Estou usando o NGINX em um cenário simples de proxy reverso, geralmente com uma variável para definir nomes de host para que ele não falhe ao iniciar se o host estiver indisponível.
Aqui está o que descobri: com essa configuração, o tráfego é proxy, mas as páginas não são renderizadas completamente - parece que algumas das bibliotecas .js não estão carregando.
resolver 192.168.86.1 valid=30s ipv6=off;
location /cam/ {
set $motion01 motion01;
proxy_set_header Host $host;
proxy_pass http://$motion01.lan/;
Se eu remover ipv6=off assim, recebo 502 gateway inválido e o erro mostra "host não resolvido":
resolver 192.168.86.1 valid=30s;
location /cam/ {
set $motion01 motion01;
proxy_set_header Host $host;
proxy_pass http://$motion01.lan/;
Mas, se eu mudar para usar um nome de host literal em vez de uma variável, funcionará perfeitamente:
set $motion01 motion01;
proxy_set_header Host $host;
#proxy_pass http://$motion01.lan/;
proxy_pass http://motion01.lan/;
Não quero usar um nome de host literal, pois o nginx não será iniciado se o host não estiver disponível no momento da inicialização, mas não consigo descobrir o que está acontecendo com essa configuração.
Já tentei com IP6 habilitado e desabilitado no servidor, e com inclusão e exclusão do
listen [::]:443 ssl;
directiva, tudo em vão. Este não foi um problema com a versão anterior do nginx (não me lembro qual usei originalmente), mas agora é com 1.14.2.2.
Toda e qualquer sugestão é bem-vinda!