it-swarm.cn

如何找出运行时Apache正在使用哪个httpd.conf

我一直在努力寻找这一点:您如何问Apache用来加载哪个httpd.conf文件?

当您有许多Apache实例在运行,或者很长一段时间没有看计算机时,并且磁盘上有很多httpd.conf文件,这将变得非常困难!

非常感谢 :)

31
Ali
Apache2ctl -V | grep SERVER_CONFIG_FILE
46
vartec

/usr/sbin/Apache2 -V提供了此信息以及更多信息:)

3
Bradley Flood

在优胜美地,我发现它是/Library/Server/Web/Config/Apache2/httpd_server_app.conf

即使 apachectl -V | grep .conf

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

2
user281263

对于RHEL或Centos,首先找到正在运行的Apache进程...

ps ax | grep httpd

注意输出中的路径。对我来说是.

/opt/rh/httpd24/root/usr/sbin/httpd

然后,可以在此路径中使用-V选项以获取配置路径。

/opt/rh/httpd24/root/usr/sbin/httpd -V

在输出中,您应该看到HTTPD_ROOT的绝对路径以及SERVER_CONFIG_FILE的相对路径。将该绝对路径和相对路径放在一起,即可获得配置文件位置。

信用: https://stackoverflow.com/a/22900993/861826

0
arnoldbird

截至2016年( 错误59376 ),来自Apache 2.4.23起,可以使用专用于此目的的选项。

它可以显示整个配置文件树,包括行号,这对于调试复杂的配置非常有用。

$ 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

要么,

$ httpd -t -D DUMP_INCLUDES
0
Amit Naidu