Можно ли использовать /etc/hosts вместо resolver при использовании proxy_pass?
Мне нужно выполнить proxy_pass на ту же машину nginx. Есть ли способ разрешить домены, используя файл /etc/hosts машины вместо указания DNS-сервера через свойство "resolver"?
Это избавит меня от дополнительных хопов, необходимых для достижения одного и того же сервера. Я пробовал настроить внутренний IP, сопоставленный с DNS в файле /etc/hosts, но nginx все равно считывает данные с DNS-сервера, заданного в свойстве resolver. Или есть способ заставить модуль HTTPProxy учитывать настройки файла /etc/hosts?
Спасибо за любой совет, которым вы можете поделиться...
Этот же вопрос я задал на форуме nginx: http://forum.nginx.org/read.php?11,218997
Вы можете обойти это, установив dnsmasq
и установив свой распознаватель на 127.0.0.1
. В основном это использует ваш локальный DNS в качестве распознавателя, но он разрешает только то, о чем он знает (среди них ваш /etc/hosts
), и перенаправляет все остальное в ваш DNS по умолчанию.