Mais uma vez, tenho um problema com a configuração do meu host virtual apache. (A configuração padrão é usada em vez da minha específica).
O problema não é realmente a configuração incorreta, mas como resolvê-lo.
Alguém tem bons conselhos para resolver esse tipo de problema rapidamente?
Mais algumas informações.
O arquivo conf padrão é este:
NameVirtualHost *
<VirtualHost *>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
E a configuração do host virtual que não se aplica é esta:
<VirtualHost *:*>
ProxyPreserveHost On
ProxyPass / http://ip.ip.ip.ip:8088/
ProxyPassReverse / http://ip.ip.ip.ip:8088/
ServerName wiki.mydomain.com
</VirtualHost>
apache
debugging
virtualhost
GaetanZ
fonte
fonte
-S
é um sinônimo para-t -D DUMP_VHOSTS
que os dois sejam iguaisc:\\wamp\\bin\\apache\\apache2.4.9\\bin\\httpd.exe -S
Aqui está um comando que eu acho que poderia ser de alguma ajuda:
Você obterá uma lista de todos os vhosts, saberá qual é o padrão e garantirá que sua sintaxe esteja correta (o mesmo que apachectl configtest sugerido por yojimbo87).
Você também saberá onde cada vhost é declarado. Pode ser útil se seus arquivos de configuração estiverem uma bagunça. ;)
fonte
Se você estiver tentando depurar a configuração do host virtual, poderá achar útil a opção de linha de comando do Apache -S. Ou seja, digite o seguinte comando:
Este comando irá despejar uma descrição de como o Apache analisou o arquivo de configuração. Um exame cuidadoso dos endereços IP e nomes de servidores pode ajudar a descobrir erros de configuração. (Consulte a documentação do programa httpd para outras opções de linha de comando).
fonte
apache2ctl -S
APACHE_RUN_USER=www-data APACHE_RUN_GROUP=www-data /usr/sbin/apache2 -S
Primeiro, verifique os arquivos de configuração quanto a erros de sintaxe
apachectl configtest
e, em seguida, verifique os logs de erros do apache .fonte
Eu tinha um novo arquivo de configuração do VirtualHost que não estava aparecendo ao usar o
apachectl -S
comando. Depois de muito arranhar a cabeça, percebi que meu arquivo não tinha o sufixo ".conf". Depois que renomeei o arquivo com esse sufixo, meu Vhost começou a aparecer e a trabalhar!fonte
Recentemente, tive alguns problemas com um VirtualHost. Eu costumava
a2ensite
ativar um host, mas antes de executar uma reinicialização (que mataria o servidor em caso de falha), executeiO que fornece algumas informações sobre o que está acontecendo com seus hosts virtuais. Não é perfeito, mas ajuda.
fonte
Encontrei meu próprio erro, não adicionei o nome do arquivo de log: ErrorLog / var / log / apache2
E este caminho: Diretório "/ usr / share / doc /" Não contém fontes do site.
Depois que eu mudei esses dois, tudo funcionou. Curiosamente, o apache não emitiu nenhum erro, apenas não abriu meu site silenciosamente no meu Mac OS Sierra.
fonte