Hello! On Sat, Jul 04, 2015 at 09:42:06AM +0300, Shay Peretz wrote:
> Hello , > > I have an A record which resolve to 2 CNAME's , the DNS failover will > make the switch if something go wrong . > > The problem is that after a change the nginx stick to the OLD IP > unless I reload it .. > any way the Caching can be disabled ? > I tried the following with no success : > add valid for the resolver , > resolver 8.8.8.8 valid=5s; > and or > resolver_timeout 1s; > > Any recommendation to solve it ? As long as you write host names in nginx configuration, nginx will resolve these names while parsing the configuration. It won't notice any changes unless the configuration is reloaded. If you want nginx to periodically re-resolve names, there are two options available: 1) Use proxy_pass with variables: resolver 127.0.0.1; set $upstream "backend.example.com"; proxy_pass http://$upstream; When variables are used in the "proxy_pass" directive, nginx will resolve names at runtime. See http://nginx.org/r/proxy_pass for details. 2) Use the "resolve" flag in an upstream{} block. Only available in nginx plus, see http://nginx.org/en/docs/http/ngx_http_upstream_module.html#resolve for details. Alternatively, you may consider using nginx mechanisms to do failover instead. See these links for some details: http://nginx.org/en/docs/http/ngx_http_upstream_module.html http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_next_upstream -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
