Я понимаю, что несколько node.js, и я предполагаю расширение Meteor, можно запускать на одном сервере с помощью Nginx. У меня есть настройка и запуск Nginx на сервере Ubuntu, я могу даже заставить ее отвечать на запросы и прокси-сервера на одно приложение. Тем не менее, я попал в блокпост при попытке получить Nginx для прокси-трафика во второе приложение.
Некоторая предыстория:
- 1-е приложение, работающее на порту 8001
- Второе приложение, работающее на порту 8002
- Nginx, прослушивающий порт 80
- Попытка заставить nginx отправлять трафик в/в приложение один и трафик в/app2/в приложение два
- Оба приложения можно найти, перейдя в домен: 8001 и домен: 8002
My 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";
}
}
Любое понимание того, что может происходить, когда трафик идет в /app 2/, я был бы очень признателен!