it-swarm-vi.tech

Cách tìm hiểu httpd.conf Apache đang sử dụng khi chạy

Tôi đã luôn vật lộn để tìm thấy điều này: Làm thế nào bạn có thể hỏi Apache tập tin httpd.conf nào mà nó đã sử dụng để tải lên?

Sẽ trở nên khó khăn khi bạn có một số phiên bản Apache đang chạy hoặc nếu bạn đã không nhìn vào máy trong một thời gian dài và có rất nhiều tệp httpd.conf trên đĩa!

Cảm ơn rất nhiều :)

31
Ali
Apache2ctl -V | grep SERVER_CONFIG_FILE
46
vartec

/usr/sbin/Apache2 -V cung cấp thông tin này và một chút nữa :)

3
Bradley Flood

Ở Yosemite tôi thấy đó là /Library/Server/Web/Config/Apache2/httpd_server_app.conf

Mặc dù apachectl -V | grep .conf

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

2
user281263

Đối với RHEL hoặc Centos, trước tiên hãy tìm quy trình Apache đang chạy ...

ps ax | grep httpd

Lưu ý đường dẫn trong đầu ra. Đối với tôi nó là...

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

Sau đó, bạn có thể sử dụng tùy chọn -V với đường dẫn này để nhận đường dẫn cấu hình ...

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

Trong số các đầu ra, bạn sẽ thấy một đường dẫn tuyệt đối cho HTTPD_ROOT và cũng là một đường dẫn tương đối cho SERVER_CONFIG_FILE. Đặt đường dẫn tuyệt đối và đường dẫn tương đối đó với nhau và bạn có vị trí tệp cấu hình của mình.

Tín dụng: https://stackoverflow.com/a/22900993/861826

0
arnoldbird

Kể từ năm 2016 ( Bug 59376 ), từ Apache 2.4.23 trở đi, một tùy chọn dành riêng cho mục đích này có sẵn.

Nó có thể hiển thị toàn bộ cây tập tin cấu hình, bao gồm cả số dòng, rất hữu ích để gỡ lỗi các cấu hình phức tạp.

$ 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

Hoặc là,

$ httpd -t -D DUMP_INCLUDES
0
Amit Naidu