如何在不同的物理机器上使用Nginx?

时间:2018-05-30 00:05:37

标签: nginx networking centos reverse-proxy

我有很多虚拟机运行不同的Web服务器等。我希望能够在多个机器上使用SSL端口,这是Nginx的用武之地。 我已经看了,挖了,我不明白你是否可以在Nginx上使用不同的物理虚拟机。

我有一个:

  • CentOS机器运行Apache作为我的主要(无虚拟主机)网站。内部的IP为10.40.1.12,可在kodysalak.com上获取
  • Windows Server 2016上有交换。内部的IP为10.40.1.17,可在mail.kodysalak.com上找到。
  • Windows Server 2016 with Spiceworks' HelpDesk软件(Apache)。内部IP为10.40.1.14,可在help.kodysalak.com
  • 获得

这些是使用80/443的主机。我有一个运行Nginx的独立CentOS机器,没有完成配置。 IP为10.40.1.18。 当然,任何帮助都会有所帮助。

1 个答案:

答案 0 :(得分:0)

是的,你可以。

nginx' s proxy_pass(反向代理)和server_name(vhost)。

http://nginx.org/en/docs/http/server_names.html http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass

从防火墙进行端口转发,然后使用HTTP标头"主机" (SSL / TLS:SNI)又称虚拟主机。

修改

server {
    listen 443 ssl;
    server_name www.kodysalak.com kodysalak.com;
    location / {
        proxy_pass https://10.40.1.12;
    }
}

server {
    listen 443 ssl;
    server_name mail.kodysalak.com owa.kodysalak.com;
    location / {
        proxy_pass https://10.40.1.17;
    }
}

server {
    listen 80;
    server_name help.kodysalak.com;
    location / {
        proxy_pass http://10.40.1.14;
    }
}