#node.js
#node.js
Вопрос:
Я использую DreamHost в качестве своего провайдера, и у меня есть тарифный план VPS, позволяющий мне загружать приложения nodejs. Однако я хотел бы иметь возможность иметь несколько небольших приложений под одним доменом, например
www.example.com/app1
www.example.com/app2
www.example.com/app3
Возможно ли это с Node.js ?
Ответ №1:
Вы не можете запускать несколько приложений на одном порту. Но мы можем запускать приложения на разных портах и перенаправлять URL на нужное приложение, например, с помощью nginx
server {
listen 80;
root /var/www;
server_name www.example.com;
location /app1 {
proxy_pass http://localhost:{port}; // app1 server Comment 1
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /app2 {
proxy_pass http://localhost:{port}; // app2 server Comment 2
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Это перенаправит www.example.com/app1 на сервер app1 и www.example.com/app2 на сервер app2. Смотрите комментарии 1 и 2.
Ответ №2:
Вы не можете запускать несколько приложений на одном порту, но вы можете запускать их на разных портах и получать к ним доступ с помощью таких портов, как
www.example.com //app1 (default http port is 80 and default https port is 443 hence you don't need to specify port for the apps using port 80)
www.example.com:3000 //app2