Sintomas e solução
Em muitos sites ou fóruns da Q & A, as pessoas confundem sintomas e causas reais. Acabei de atualizar um servidor Ubuntu de 13.10 para 14.04.1 e encontrei os mesmos sintomas descritos pelo OP, incluindo:
1- Apache aparentemente não está funcionando.
2- variável de configuração do apache indefinida.
3- o erro de sintaxe mencionado pelo OP.
O problema é que nem todos esses sintomas são realmente pertinentes ao problema real e servem apenas como uma distração para aqueles que tentam o seu melhor para ajudar.
Diferentes problemas de raiz podem fazer com que os administradores acessem sites como este com aproximadamente a mesma descrição: "Eu atualizei o sistema operacional e agora o apache não está funcionando ..."
Uma causa específica
Tendo exatamente os mesmos sintomas aparentes do OP, fui atraído por essa questão. Infelizmente, a única resposta que continha uma dica válida para a verdadeira causa raiz do meu problema foi downvoted (-1), postada por user1469291 com um representante de 1 !!
Então eu procurei outros sites até encontrar uma explicação clara do problema (e, portanto, da solução).
A solução a seguir pode não resolver o verdadeiro problema do OP, mas tenho certeza de que ajudará outras pessoas que podem se sentir atraídas por essa questão pelas mesmas razões que eu.
/etc/apache2/apache2.conf
contém:
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
, o que significa que somente os arquivos de configuração do site em / etc / apache2 / sites-enabled / ending em .conf serão carregados. O link simbólico mais antigo nesse diretório será ignorado.
Costumava ser simplesmente habilitado para sites / *. É por isso que todos os meus arquivos de configuração do host virtual que eu simplesmente nomeei ww1.example.com, ww2.example.com, etc, costumavam funcionar, mas subitamente e inicialmente inexplicavelmente pararam de funcionar após a atualização.
Portanto, altere a diretiva acima e recarregue o apache ou, como eu fiz, remova manualmente todos os links simbólicos antigos em sites habilitados /, renomeie todos os arquivos em sites disponíveis / para adicionar o sufixo .conf e, em seguida, habilitado para cada site individualmente.
Além disso, a diretiva padrão no apache.conf é mais rigorosa:
<Directory />
Options FollowSymLinks
AllowOverride None
Require all deny
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Portanto, se você hospedar seus sites virtuais em / home / user / em algum lugar, certifique-se de substituir a diretiva adequadamente.