我想要配置 Apache2(在 Ubuntu 14.04 上),使其在启动时启动并监听 127.0.0.1:80 和 192.150.0.1:80。
为此,我有以下几行/etc/apache2/ports.conf
:
Listen 127.0.0.1:80
Listen 192.168.150.1:80
以及 VirtualHost 指令的开始标记:
<VirtualHost 127.0.0.1:80 192.168.150.1:80>
经过这些编辑和运行后,一切运行正常sudo apache2ctl restart
。
但是后者 IP 在启动时未绑定到服务器的活动接口,因此 Apache 无法在下次启动时启动。
我找到了这里:
当尝试绑定到主机系统上不存在的 IP 和端口时,apache httpd 将无法启动。
如果无法绑定后一个 IP 是问题所在,我希望 Apache 不会自行终止。是否有任何使用 Apache 配置指令的解决方案:
- 即使第二个地址未绑定到任何接口,也可以在启动时成功启动 Apache。
- 只需要我打开接口并重新启动 apache 来监听两个地址。
?
我不想/etc/apache2/ports.conf
每次打开界面后都要手动编辑。
答案1
这在多个 IP 上的多个站点的 HA 设置中很常见。这些 IP 在 HA 中的设备之间共享。
简而言之,您不能。如果设备上没有所有 IP,Apache 将无法启动。
我们的答案是将 apache 重启写入故障转移流程,确保在发生故障转移时重新启动 apache 服务。