2017-02-13 62 views
0

我有一个动态的IP,我使用ddclient管理。我使用no-ip来维护主机名以指向我的IP。nginx重定向子域到单独的服务器ip

我有www.somename.com,sub.somename.com和app.somename.com。显然,这些都指向我的知识产权。前两个是运行NGINX的服务器(server1)上的几个wordpress页面,在站点中有单独的配置 - 可用于每个站点。后者是运行GitLab的独立应用程序服务器(server2)。

我的路由器不允许我打开子域,所以端口80的所有流量都被路由到server1。我希望有一个配置,我可以在nginx中应用,这将允许我发送app.somename.com的所有流量到本地IP地址(192.168.0.nnn),但保留页面地址作为app.subdomain.com。

现在,我有: -


/etc/nginx/site-available$ ls 
somename.com domain sub.somename.com app.somename.com 

相关者在启用站点链接。对于应用程序服务器,我有: -

server { 
     server_name app.somename.com; 
     location/{ 
       proxy_pass http://192.168.0.16:80; 
     } 
} 

的问题是,在浏览器地址栏,这导致: -

http://192.168.1.16/some/pages

,我想: -

http://app.somename.com/some/pages

我该如何解决这个问题?

回答

0

你可以试试这个!

server { 
     server_name app.somename.com; 
     location/{ 
       proxy_pass http://192.168.0.16:80; 
       proxy_set_header Host app.somename.com; 
     } 
} 
+0

完美! proxy_set_header正是缺少的。非常感谢! – Metz

+0

没问题。我很高兴我可以帮忙! –