UPDATE: Essa correção também se aplica a versão 8.04 do Ubuntu.
Esse final de semana eu decidi instalar a versão beta do Ubuntu Gutsy na minha máquina para ver como está ficando a nova versão LTS do Ubuntu. Com relação à distro, eu realmente fiquei impressionado… Tem algumas coisas bastante interessantes e alguns efeitos (eye-candy) que me lembraram um pouco do Mac! Realmente essa nova versão está muito bacana, mas nesse post eu não vou falar sobre isso e vou tratar de um assunto um pouquinho chato: um probleminha na configuração do apache dessa nova versão (e das anteriores).
Como todo bom freelancer, sempre que eu instalo um novo sistema no meu desktop eu configuro o servidor web para poder tocar meus projetos… E como geralmente eu estou envolvido com mais do que um sistema, eu costumo criar VirtualHost’s para cada um deles! Por isso é bastante comum eu restartar várias vezes o meu servidor apache sempre que altero alguma configuração, e desde a versão passada do Ubuntu que eu notei que a configuração default do Apache (na verdade não é configuração do apache) gera um monte de warnings estranhos, como segue abaixo:
$ sudo apt-get install apache2
...
$ sudo /etc/init.d/apache2 restart
* Restarting web server apache2
apache2: apr_sockaddr_info_get() failed for isengard
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
apache2: apr_sockaddr_info_get() failed for isengard
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[ OK ]
A princípio essas mensagens de warning não atrapalham a execução do servidor que é iniciado normalmente após exibi-las, porém é bastante chato que ter que ficar lendo esse monte de “erros” sempre que você for reiniciar o servidor… Essas mensagens são geradas porque os VirtualHost’s necessitam que a definição de seus hosts no /etc/hosts sigam uma sintaxe específica de host + domínio. Portanto, para corrigir o problema você precisa editar o arquivo /etc/hosts e alterar o formato dessas configurações para as previstas nas especificações.
Corrigir isso é extremamente simples e portanto eu vou usar o arquivo do meu próprio desktop para exemplificar as alterações… A minha máquina está configurada atualmente com o nome de isengard e o domínio residencial. Abaixo você pode ver como se encontra o meu arquivo /etc/hosts atualmente:
127.0.0.1 localhost
127.0.1.1 isengard.residencial
Para corrigir o problema, você precisará alterar as primeiras linhas do seu arquivo (mostrada acima) para o formato abaixo:
127.0.0.1 localhost.localdomain localhost
127.0.1.1 isengard.residencial isengard
Caso você não possua um domínio configurado, você pode utilizar como domínio localdomain como no exemplo da linha do localhost do arquivo… E pronto! Agora você pode reiniciar o seu servidor apache tranquilamente sem receber nenhuma mensagem chata de warning :)
Simples não? Segue então um pouco mais do mesmo: CouldNotDetermineServerName