upstream 429 and non-idempotent request

Maxim Dounin mdounin at
Thu Jun 8 15:20:04 UTC 2017


On Thu, Jun 08, 2017 at 01:10:25AM -0700, Frank Liu wrote:

> In case of upstream returning 429, I'd like to have nginx retry next
> upstream server. Since nginx by default won't retry non-idempotent
> requests, how do I force nginx to retry when receiving 429? I imagine this
> should be the default behavior anyway, or does nginx not care about
> returning code and will never retry non-idempotent?

Non-idemportent requests are not retried as long as the request is 
already sent, regardless of a particular error.  If you want nginx 
to retry non-idempotent requests, you can do so with 
"proxy_next_upstream non-idempotent;", see

Maxim Dounin

More information about the nginx mailing list