O Nginx se conecta ao nodjs no loopback IPv6 [:: 1]. O nodejs provavelmente está apenas ouvindo no IPv4.
Tente definir
upstream api {
server 127.0.0.1:5000;
}
...
Eu continuo vendo a mensagem de erro abaixo no log de erros, posso acessar todos os recursos, mas não tenho certeza de porque o erro está sendo sinalizado.
error:
[error] 13368#0: *449 connect() failed (111: Connection refused) while connecting to upstream, client: x.x.x.x, server: myserver.com, request: "GET /stories/mine HTTP/1.1", upstream: "http://[::1]:5000/stories/mine", host: "myserver.com"
Estou passando a conexão para um cluster node.js
em execução na porta 5000. Não consigo ver o que eu teria perdido?
upstream api {
server localhost:5000;
}
server {
listen 80;
server_name myserver.com;
root /home/user/_api;
# Logging
error_log /home/user/log/api.error.log notice;
location / {
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_cache one;
proxy_cache_key sfs$request_uri$scheme;
proxy_pass http://api;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}