Estou usando o nginx como um proxy reverso e gostaria que esperasse alguns segundos e tente novamente uma solicitação se o servidor upstream não estiver respondendo. Dessa forma, posso reiniciar o servidor upstream e, em vez de os usuários verem o gateway 502 inválido, os navegadores ficam travados por alguns segundos (o processo de reinicialização leva 3 ou 4 segundos). Eu tentei algumas coisas, eu coloquei isso no meu bloco de servidor:
proxy_connect_timeout 60;
proxy_send_timeout 15;
proxy_read_timeout 20;
mas não parecia fazer nada. Eu também tentei adicionar isso ao bloco upstream:
server 127.0.0.1:3001 fail_timeout=10s;
novamente, não o que eu queria.
Isso é possível? o que estou perdendo?