Resolver not working as expected
Steve Wilson
lists-nginx at swsystem.co.uk
Tue Aug 28 12:32:35 UTC 2018
On 27/08/2018 14:30, Maxim Dounin wrote:
> Hello!
>
> On Mon, Aug 27, 2018 at 06:56:01PM +0530, Sharan J wrote:
>
>> Hi,
>>
>> Sample conf:
>>
>> http{
>> resolver x.x.x.x;
>> server {
>> server_name _;
>> location / {
>> proxy_pass http://somedomain.com;
>> }
>> }
>>
>> I have nameservers configured in my resolv.conf. But, somedomain.com
>> will
>> be configured in x.x.x.x DNS server only. So, I have specified
>> resolver in
>> my nginx.conf. However, during startup/reload I get "host not found in
>> upstream error". Why nginx is not considering resolver conf and
>> searches
>> only in the nameservers configured in resolv.conf?
>
> Names as written in the configuration are resolved while parsing
> the configuration using the system resolver. DNS servers defined
> by the "resolver" directive are only used for dynamic / run-time
> name resolution - for example, when variables are used in the
> "proxy_pass" directive.
I didn't want to hijack this thread but my question seems relevant.
Is there a way to prevent dns resolution on a proxy_pass or upstream
block during config parsing, or at least make it non-fatal?
background/reason: I've a backend server with dynamic IP which doesn't
always resolve. It will resolve when it's expected to be working but may
not be available at config parsing time.
More information about the nginx
mailing list