
Eu tenho um servidor web executando o Ubuntu 17.04 que estou tentando configurar Apache
. Tudo correu muito bem até que decidi hospedar dois sites em uma única máquina através do virtualHosts. Agora apache
se recusa a inicializar mesmo com um único host habilitado. Cada vez que tento iniciar, Apache
recebo este erro:
apache2: Syntax error on line 80 of /etc/apache2/apache2.conf:
DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot.
Nenhuma das minhas tentativas de consertar isso deu em nada, incluindo:
apt purge apache2 && rm -r /etc/apache2
Toda a linha 80 da mensagem de erro me diz que é DefaultRuntimeDir ${APACHE_RUN_DIR}
.
E em nenhum momento vejo onde ou o que APACHE_RUN_DIR
está declarado.
Alguém pode me ajudar?
Responder1
O comando
source /etc/apache2/envvars
resolvi meu problema (depois de tentar TODOS os outros).
Para verificar se está tudo bem ou não use o comando
apache2 -S
Descobri que isso era mais rápido do que usar meus registros DNS.
Responder2
Falta uma atualização em "man apache2", pelo menos para a opção -V;
Hoje, deve-se usar "apachectl" ou "apache2ctl" em vez de
"apache2" para pelo menos algumas opções, conforme indicado em
Responder3
Apache2 usa /etc/apache2/envvars
para definir variáveis de ambiente. Você pode usar essas informações para garantir que o diretório ${APACHE_RUN_DIR}
apontado seja válido.
Eu estava enfrentando o mesmo problema ao atualizar de 14.04 para 17.04. O problema era: ${APACHE_RUN_DIR}
estava definido como /var/run/apache2
, mas a pasta apache2 estava faltando em /var/run
.
A solução para mim foi:mkdir /var/run/apache2
Responder4
no meu caso, tratava-se da linha "Exigir todos negados" no arquivo apache2.conf que (novamente) no meu caso foi digitado apenas como "Exigir negado"