Nginx服务一个子域的根,而不是另一个子域的根

时间:2019-02-26 06:42:29

标签: nginx

我有两个子域app.mydomain.com和v1.api.mydomain.com,它们指向相同的IP。我希望将app.mydomain.com代理到localhost:5000,并将v1.api.mydomain.com代理到localhost:1337。

以下配置可以做到这一点(app.mydomain.com / ...由localhost:5000提供服务,而v1.api.mydomain.com / ...由localhost:1337提供服务)除了以下几点:根v1.api.mydomain.com(带有或不带斜杠)的内容不是由localhost:1337提供的,它是由localhost:5000(app.mydomain.com)提供的,因此未显示我的期望。这怎么可能?

启用站点的第一个配置文件:

server {
  listen 80;

  server_name app.mydomain.com;

  location / {
      proxy_pass http://localhost:5000/;
      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; 
  }

启用站点的第二个配置文件:

server {
  listen 80;

  server_name v1.api.mydomain.com;

  location / {
      proxy_pass http://localhost:1337/;
      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; 
  }
}

为确保问题不是由运行在localhost:1337上的服务器进行的某种重定向,我将其关闭,并且问题仍然存在,所以我的nginx配置确实存在问题。感谢您的帮助。

0 个答案:

没有答案