Como configurar o Apache2 para iniciar mesmo que ele não consiga escutar em um IP específico, mas tenha sucesso em outros?

Como configurar o Apache2 para iniciar mesmo que ele não consiga escutar em um IP específico, mas tenha sucesso em outros?

Quero configurar o Apache2 (no Ubuntu 14.04) de forma que ele inicie na inicialização e escute em 127.0.0.1:80 e 192.150.0.1:80.

Para isso, tenho as seguintes linhas em /etc/apache2/ports.conf:

Listen 127.0.0.1:80
Listen 192.168.150.1:80

e a tag inicial da diretiva VirtualHost:

<VirtualHost 127.0.0.1:80 192.168.150.1:80> 

As coisas funcionaram bem depois dessas edições e da execução do arquivo sudo apache2ctl restart.

Mas o último IP não está vinculado a uma interface ativa no servidor na inicialização, portanto o Apache não poderá iniciar na próxima inicialização.

Eu encontreiaqui:

Ao tentar vincular a um IP e porta não presentes no sistema host,o apache httpd falhará ao iniciar.

Eu quero que o Apache não se mate se não conseguir vincular o último IP é tudo o que deu errado. Existe alguma solução usando as diretivas de configuração do Apache que:

  • inicia o Apache com sucesso na inicialização, mesmo que o segundo endereço não esteja vinculado a nenhuma interface.
  • exige que eu apenas ligue a interface e reinicie o Apache para escutar em ambos os endereços.

?

Não quero editar manualmente /etc/apache2/ports.conftodas as vezes depois de ligar a interface.

Responder1

Isso é bastante comum em configurações de alta disponibilidade com vários sites em vários IPs. Os IPs são compartilhados entre os dispositivos em HA.

Resposta curta, você não pode. O Apache não iniciará sem todos os IPs presentes no dispositivo.

Nossa resposta foi escrever uma reinicialização do Apache no processo de failover, garantindo que o serviço Apache fosse reiniciado quando ocorresse um failover.

informação relacionada