IP6과 일치하지 않는 NGINX Proxy_pass 호스트 확인

IP6과 일치하지 않는 NGINX Proxy_pass 호스트 확인

저는 간단한 역방향 프록시 시나리오에서 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 잘못된 게이트웨이가 표시되고 "호스트가 확인되지 않음"이라는 오류가 표시됩니다.

    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에서는 문제가 됩니다.

모든 제안을 환영합니다!

관련 정보