虚拟主机由不同的域(nginx)

我有两个HTTP服务器。 其中一个(A)正在侦听端口3000,另一个(B)侦听端口4000.另外,我有两个域example1.comexample2.com 。 另一方面,我有nginx服务器在80端口监听。

当请求使用example1.com域时,我希望从服务器A获得响应,当请求使用example2.com时,我将从服务器B收到响应。

我应该如何configurationnginx?

你必须使用proxy_pass (这可能需要更多的configuration)

http://wiki.nginx.org/HttpProxyModule#proxy_pass

 http { server { server_name www.example1.com; root /var/www/example1.com/htdocs; location / { proxy_pass http://127.0.0.1:3000/; // more configuration } } server { server_name www.example2.com; root /var/www/example2.com/htdocs; location / { proxy_pass http://127.0.0.1:4000/; // more configuration } } } 

您可以为example1.com和exmaple2.com设置虚拟主机和别名

cd / etc / nginx / sites-available /

为您的域创build一个虚拟主机,以获得更多详细信息。 http://wiki.nginx.org/VirtualHostExample

 http { index index.html; server { server_name www.example1.com; access_log logs/example2.access.log main; root /var/www/example.com/htdocs; } server { server_name www.exampl2.com; access_log logs/example2.access.log main; root /var/www/example2.com/htdocs; } }