max_fails for 404s?

Steven Deobald steven at deobald.ca
Wed May 18 23:35:49 MSD 2011


Hey folks,

We've got the following scenario occurring in production. The solution is
non-obvious... to me, at least.

[client] ==> [nginx] ==> [service S]

* nginx fronting 2 application servers which provide a service S. (Primary
and backup, both running Trinidad. Trinidad is a JRuby/Rails wrapper for
Tomcat.)
* hot-deploying a rails (jruby) app into Trinidad causes Trinidad to return
a 404 to nginx
* nginx returns the 404 to the application. In this particular case, the
client is another service which expects service S to remain live during
deployments

So, nginx does provide an "http_404" case for the "proxy_next_upstream"
directive. However, this would require the "max_fails" setting to pertain to
404s, which it doesn't... otherwise legitimate 404s produce an infinite
loop.

Is there something like "max_fails" for 404s?
Is there another solution to this problem?
Is it Trinidad's fault for returning 404s and not 503s? (I would say it is
but I can't find a solution to that problem just yet.)

Thanks!
-steven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20110518/4cea89de/attachment.html>


More information about the nginx mailing list