Resolvido aqui . Acontece que o problema não estava com o nginx, mas com o CloudFlare.
Tentativa de resolver um problema que me incomoda um pouco. Eu destilei os sintomas em um conjunto de etapas reproduzíveis:
Eu tenho dois sites, siteA e siteB . Ambos são aplicativos Node.js em execução em portas diferentes (por exemplo, 4567 e 4568 )
Os dois aplicativos têm seu próprio arquivo em sites_available (além de um link simbólico de sites_enabled ), que contém as diretivas proxy_pass http://node_siteA/ e proxy_pass http://node_siteB/ respectivamente, dentro de um bloco location .
Eles também têm um bloco upstream (definido globalmente?):
%pr_e%
O site A e o site B não têm nada a ver um com o outro.
Sim, estou reiniciando (recarregando, na verdade) o nginx sempre que faço uma alteração.
Se eu derrubar o site B e tentar acessá-lo pela Web, receberei o site A
Por que isso acontece?
Outras vezes, quando eu crio um novo Site C , por exemplo, o nginx se recusa a me mostrar qualquer coisa, exceto "Welcome to nginx!" por ~ 5 minutos. Isso sugere um tempo limite de resolvedor, talvez?
Quando eu acesso Site B após sua configuração ter sido excluída, e ele me envia para Site A , isso soa como nginx me enviando para servidores em uma forma round-robin ...
Resolvido aqui . Acontece que o problema não estava com o nginx, mas com o CloudFlare.
Tags proxy nginx reverse-proxy