我有一个 godaddy centos 服务器,在 apache 上运行几个域。
我现在需要安装一个新域来托管一个应用程序并需要 Nginx 服务。
我可以在同一台专用服务器上运行这两个 Web 服务器吗?我需要 2 个 IP,不是吗?我该怎么做?任何见解都值得赞赏。
谢谢,
答案1
有两个选项可以实现此功能,您需要将 apache 和 nginx 绑定到它们自己的 IP 地址。例如,在 httpd.conf 文件中,您需要列出一个特定的 IP,例如Listen 192.168.1.1:80
下面列出的文章解释了如何绑定 nginx 和 apache,以及如何通过设置虚拟主机在 apache 后面使用 nginx
欲了解更多信息,请查看这站点外
答案2
另一种方法是使用 VirtualHosts,并让 apache 将新域代理到 Nginx,后者监听另一个端口(例如 8080)。这样,您就不一定需要第二个 IP 地址。
示例配置:
LoadModule proxy_module /path/to/mod_proxy.so
LoadModule proxy_http_module /path/to/mod_proxy_http.so
NameVirtualHost *
<VirtualHost *>
ServerName some.existing.domain.com
ProxyRequests Off
# ... config for domain ...
</VirtualHost>
<VirtualHost *>
ServerName new.domain.com
ProxyRequests Off
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>