如何使用同一域设置2台express服务器

如何使用同一域设置2台express服务器,express,nginx,Express,Nginx,我有一个域名:dev.example.com 如果用户访问dev.example.com/service/api/我想调用express服务器 如果用户转到dev.expample.com/lib/我想调用另一个express服务器 当我在我的站点中设置不同的位置时,启用/默认Nginx只会联系/service/api,即使我在我要查找的URL中指定了/lib/ 如何修复此问题?您可以尝试将其添加到您的nginx.conf: upstream express_server_1 { serve

我有一个域名:dev.example.com

如果用户访问dev.example.com/service/api/我想调用express服务器

如果用户转到dev.expample.com/lib/我想调用另一个express服务器

当我在我的站点中设置不同的位置时,启用/默认Nginx只会联系/service/api,即使我在我要查找的URL中指定了/lib/


如何修复此问题?

您可以尝试将其添加到您的
nginx.conf

upstream express_server_1 {
  server ip:port;
}

upstream express server_2 {
  server ip:port;
}

server {
  listen 80;
  listen 443; # if https available

  server_name dev.example.com

  location /service/api {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $server_name;
    proxy_pass http://express_server_1; #https://express_server_1 if https available
  }

   location /lib {
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header Host $server_name;
     proxy_pass http://express_server_2;
   }
}

如果您正在运行两台服务器,并且需要向它们传递代理,那么这可能会起作用。我不能给你一个更准确的答案,关于(不)剥离前缀路径等,因为你的问题是非常模糊的,没有附加配置

为什么不使用路由?