Eu estava tentando algumas coisas para um vhost Apache "padrão" personalizado e nada parecia funcionar, sempre recebia o /var/www/html/index.html
serviço em vez de outros conteúdos ou erros que queria exibir.
Mas o mais bizarro: todos os logs de acesso foram gravados /var/log/apache2/other_vhosts_access.log
em vez de /var/log/apache2/access.log
.
Tentei redefinir minha instalação removendo completamente o Apache (não tenho certeza se isso foi suficiente)...
systemctl stop apache2
apt-get remove --purge apache2
rm -rf /etc/apache2
rm -rf /var/log/apache2
rm -rf /var/www/html
deluser --remove-home www-data
apt autoremove
... depois reinstalá-lo e apenas alterar a porta (porque eu uso o nginx como proxy reverso):
apt install apache2
sed -i 's/Listen 80/Listen 8080/' /etc/apache2/ports.conf
Portanto, agora tenho apenas um vhost presente nesta instalação: 000-default.conf
(em seu estado original) e está ativo (marcado apache2ctl -S
).
E mesmo depois disso, qualquer chamada para o meu servidor web ainda é redirecionada pelo nginx para o Apache (tudo bem), que ainda registra qualquer coisa no /var/log/apache2/other_vhosts_access.log
, o que indica (no meu entender) que o vhost não é acionado pelo Apache (isso não está certo).
Não é um vhost "genérico", que deve ser acionado por qualquer Host
cabeçalho enviado a ele? Por que não seria o gatilho neste caso?
Testei um pouco com apache2.conf
's LogLevel debug
e olhei para /var/log/apache2/error.log
e' /var/log/syslog
, mas não vi nada que parecesse relevante (ainda posso postar tudo se algum de vocês achar que pode ajudar).
Sou um idiota... O problema foi causado pela única coisa que difere da instalação padrão!
Se o Apache não estiver escutando a porta 80, mas a porta 8080 (porque está atrás de um proxy reverso nginx que mantém o acesso à porta 80), então todos os vhosts do Apache deverão ser configurados adequadamente.
Apache conf sempre menciona portas em dois lugares:
Listen 80
em/etc/apache2/ports.conf
<VirtualHost *:80>
em todos os vhosts em/etc/apache2/sites-available/*.conf
(ousites-enabled
)Para atualizar a porta para ambos: