Capisco che più node.js, e presumo per estensione Meteor, può essere eseguito su un server utilizzando Nginx. Ho installato Nginx e sto girando su un server Ubuntu bene, posso persino farlo rispondere alle richieste e assegnarle a una mia applicazione. Ho comunque colpito un roadblock quando cercavo di ottenere da Nginx il traffico proxy verso la seconda applicazione.Problemi con Nginx e Multiple Meteor/Nodejs App
Alcuni retroscena:
- prima applicazione in esecuzione sulla porta 8001
- seconda applicazione in esecuzione sulla porta 8002
- Nginx in ascolto sulla porta 80
- Cercando di ottenere nginx per inviare traffico a/a App uno e il traffico a/app2/a app due
- Entrambe le app possono essere raggiunte andando al dominio: 8001 e dominio: 8002
mio Nginx config:
upstream mydomain.com {
server 127.0.0.1:8001;
server 127.0.0.1:8002;
}
# the nginx server instance
server {
listen 0.0.0.0:80 default_server;
access_log /var/log/nginx/mydomain.log;
location /app2 {
rewrite /app2/(.*) /$1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:8002;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:8001;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Tutta la comprensione di ciò che potrebbe essere in corso quando il traffico va a/app2/sarei molto grato!
Questa è una risposta sweeeeet proprio qui! Avere un upvote :) –
Questa è una risposta sorprendente, grazie. La mia unica domanda è che non sto provando a fare un round robin (che tu hai parzialmente indirizzato). Aggiungerò le voci corrette a monte ma sono curioso ... le mie voci di posizione sono a posto? – jak119
raccomando il successivo: se app1 è l'app principale e l'app2 è un "figlio di app1". la tua posizione è ok. Puoi anche mettere entrambi su/app1 e/app2. Boll – jmingov