Chatbot + Nginx + Socket.io

Мне нужно поместить приложение js узла на сервер, на самом деле это два приложения:

app1 (внешний интерфейс) на VM-link:3000, когда пользователь пишет сообщение, вызываемое приложением app2 (Backend) на VM-link:3001 или VM-link:3001/socket.io/

Поэтому я использовал прокси-сервер nginx, чтобы связать эти две виртуальные машины на моем www.domain.com, и я хотел, чтобы они работали на domain.com/chatbot

мой конфигурационный файл nginx:

server {
  listen [::]:80;
  server_name domain.com;

  access_log  /var/log/nginx/permit_access.log;
  error_log   /var/log/nginx/permit_error.log;

location /chatbot {
   proxy_pass         http://VM-link:3000;
   proxy_redirect     off;

    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

# Websockets support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade"; }

location /back {
   proxy_pass         http://VM-link:3001;
   proxy_redirect     off;

    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

# Websockets support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /socket.io {
    proxy_pass         http://VM-Link:3001/socket.io/;
    proxy_redirect     off;

   proxy_set_header   Host             $host;
   proxy_set_header   X-Real-IP        $remote_addr;
   proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}
} 

Проблема: когда я пишу domain.com/chatbot и пишу сообщение, оно вызывает domain.com:3001

Вопрос: как я могу это исправить, не касаясь кода (я имею в виду использование файла конфигурации)

0 ответов

Другие вопросы по тегам