Hello! On Thu, Jun 05, 2014 at 06:20:35PM +0300, Reinis Rozitis wrote:
> >We run a reverse proxy to Amazon S3 service. Sometime Amazon change their > >IPs and some of them may become unresponsive and render reservse proxy > >unusuable. Is there options to force nginx to re-resolve IPs of backends > >lets say each 5 mins ? > > Give the upstream{} block the hostnames of the instances and add an resolver > ( http://nginx.org/en/docs/http/ngx_http_core_module.html#resolver ). This won't make any difference. Names of servers in upstream{} blocks are resolved during configuration parsing, and won't be re-resolved till next configuration parsing. To ensure periodic hostname resolution, one have to use a hostname (not an upstream block) in proxy_pass, and variables in the proxy_pass directive. This way, nginx won't know a hostname in advance, and will have to use resolver to resolve it, resulting in a periodic hostname resolution. (Alternatively, a special "resolve" flag for servers in upstream{} blocks was recently introduced of the commercial subscription, see http://nginx.org/en/docs/http/ngx_http_upstream_module.html#server. But this requires commercial subscription.) -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx