Como descobrir qual httpd.conf apache está usando em tempo de execução

29

Eu sempre lutei para encontrar o seguinte: Como você pode perguntar ao apache qual arquivo httpd.conf ele costumava carregar?

Torna-se difícil quando você tem várias instâncias do apache em execução, ou se você não olha a máquina há muito tempo, e há muitos arquivos httpd.conf em disco!

Muito obrigado :)


fonte

Respostas:

44
apache2ctl -V | grep SERVER_CONFIG_FILE
vartec
fonte
Bingo. Observe que o binário pode ser chamado de apachectl para diferentes distribuições ou sistemas operacionais. Também grep para HTTPD_ROOT - o valor de HTTPD_ROOT anexado a SERVER_CONFIG_FILE fornecerá o caminho completo para o arquivo de configuração.
275 Mihai Limbăşan
11
No meu caso, é: -D HTTPD_ROOT = "/ srv / www" -D SERVER_CONFIG_FILE = "/ etc / apache2 / httpd.conf"
vartec 27/05/2009
Isto salvou meu dia =) Você também pode simplesmente tentar httpd.confno caso de que o SERVER_CONFIG_FILE é nomeado algo mais: apachectl -V | grep httpd.conf.
Cyclonecode 9/08/12
2
Também pode ser httpd -V
Lotus
Para mim, a resposta funcionou bem, mas tive que substituir o apache2ctl pelo apachectl.
Skiabox
3

/usr/sbin/apache2 -V fornece essas informações e um pouco mais :)

Bradley Flood
fonte
Você pode melhorar esta resposta fornecendo um exemplo de saída desse comando.
22414 Ladadadada
2

Em Yosemite, descobri que era /Library/Server/Web/Config/apache2/httpd_server_app.conf

Apesar de apachectl -V | grep .conf

-D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"

user281263
fonte
0

A partir de 2016 ( Bug 59376 ), a partir Apache 2.4.23de então, uma opção dedicada a esse objetivo estará disponível.

Ele pode exibir toda a árvore do arquivo de configuração, incluindo números de linha, o que é útil para depurar configurações complexas.

$ apachectl -t -D DUMP_INCLUDES

Included configuration files:
  (*) /etc/httpd/conf/httpd.conf
    (21) /etc/httpd/conf.d/elasticbeanstalk_log.conf
    (21) /etc/httpd/conf.d/healthd.conf
    (21) /etc/httpd/conf.d/ssl.conf
    (22) /etc/httpd/conf.d/elasticbeanstalk/00_application.conf
    (22) /etc/httpd/conf.d/elasticbeanstalk/01_gzip.conf
    (22) /etc/httpd/conf.d/elasticbeanstalk/02_static.conf

Ou,

$ httpd -t -D DUMP_INCLUDES
Amit Naidu
fonte