LINUX.ORG.RU

Nginx + Resolver объясните...

 , ,


0

1

Никак не могу заставить работать корректно resolver!

Есть такой конфиг:

upstream a {
    server first.example.com;
}

server {
    resolver 8.8.8.8 valid=30s ipv6=off;
    set $backend http://a; # пробовал описывать это и в location
    
    location / {
        proxy_pass $backend;
    }
}

Например, я принудительно меняю ip адрес у first.example.com Но почему то nginx до сих пор пытается открыть сайт со старого ip. И по истечении 10 минут, и по истечении часа и даже сутки ждал.

TTL у домена 300 секунд.

nginx -s reload
такая команда сразу сбрасывает весь dns кеш.

Как заставить делать nginx это автоматом? Что я делаю не так?

P.S. В /etc/resolv.conf стоят восьмерки.


Попробуйте без использования upstream обойтись.

server {

    location / {
        resolver 8.8.8.8 valid=30s ipv6=off;
        proxy_pass $backend;
    }
}

И надеюсь nginx старше 1.1.19, а то старые версии игнорировали таймаут.

WoozyMasta
()
Ответ на: комментарий от WoozyMasta

Да, так я уже сам впоследствии докрутил - стало работать!

Похоже через upstream это будет работать только с параметром resolve у сервера, но, к сожалению это доступно лишь в коммерческой подписке!

xisip
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.