我可以同时运行nginx和apache吗?

这是我的情况:
Apache已经完美运行,启用了SSL并在443端口安装了证书。
我想在同一台机器上安装nginx。它既可以作为功能性的反向代理,也可以作为81或8443端口的服务器(使用与apache相同的证书)。
我找到了很多关于nginx作为主服务器、apache作为次要服务器的解决方案。但我不想破坏现有的apache配置,所以nginx对我来说将是次要的。

1那么你有什么问题呢?如果你已经找到了很多解决方案,我不明白你在这里要问什么。 - terdon
是的,这是可能的。Apache 是主服务器,将静态页面发送给 Nginx。 - George Udosen
1个回答

Apache和Nginx绝对可以同时运行。默认配置不允许它们同时启动,因为它们都会尝试在相同的端口和相同的IP上进行监听。
然而,您可以轻松地更改端口或端口和IP,或者只更改IP。有多种方法可以使它们运行在彼此之后(通常是将Apache放在Nginx后面,因为Nginx将成为链中的第一个入口点,因为它对于静态资源更快,而Apache仅在某些高级动态渲染/处理时才会被触发),或者只是并排运行。 首先请查看这个链接: http://kbeezie.com/apache-with-nginx/

默认配置将不允许它们同时启动,因为它们都会尝试在相同的端口和相同的IP上进行监听。 我通常不涉及与网络服务器或网络方面的工作,因此为了更好地理解所链接的文章,你能简要解释一下为什么这是一个问题吗(或者提供一个解释的链接)? - lampShadesDrifter
3@lampShadesDrifter 这相当于期望同一座房子(IP)中的同一扇门(端口)通向两个不同的房间(应用程序)。当你打开门时,你怎么知道会进入哪个房间呢?你需要给其中一个房间一个不同的门(端口)。 - Casey Murray
@lampShadesDrifter: Casey很好地解释了为什么你在概念上不能有两个服务监听同一个端口。但是,在实际操作中,这是个问题,因为操作系统不允许这样做。尝试监听已被占用的端口的服务将会以错误消息退出。 - MestreLion