2016-03-14 102 views
0

问题的多实例如何做一个反向代理nginx的流星

我想要一个单一的服务器网络上部署的Meteor多个实例。

每个项目都有自己的域名(比如'A' - >'A.com','B'..),但服务器只有一个Web端口:80。所以我想Nginxfollow this article

部署

我使用meteor-upmupx版本)来部署每个应用程序使用。这是mup.json

{ 
    "appName": "A", 
    "env": { 
    "PORT": "3001", 
    "ROOT_URL": "http://www.A.com" 
    }, 
} 

裁剪例子Nginx的

这是我的/etc/nginx/sites-available/A.com.conf

server { 
    listen    *:80; 

    server_name   A.com; 

    access_log   /var/log/nginx/app.dev.access.log; 
    error_log    /var/log/nginx/app.dev.error.log; 

    location/{ 
    proxy_pass http://127.0.0.1:3001; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection 'upgrade'; 
    proxy_set_header X-Forwarded-For $remote_addr; 
    } 
} 

结果

版本对于每一个领域,当我打电话:

:80 -> Ngninx Welcome page 
    :3001 -> A.com 
    :3002 -> B.com 
.. 

当我拨打whatever:80时,如何根据域名获得正确的站点?

回答

0

因此,解决方案仅仅是添加服务器名称的所有可能版本,而不是仅添加域名。

像这样

/etc/nginx/sites-available/A.com.conf

server { 
    listen    *:80; 

    server_name   A A.com *.A.com; 

    access_log   /var/log/nginx/app.dev.access.log; 
    [...]