วิธีค้นหา apache httpd.conf ที่ใช้ที่รันไทม์


29

ฉันพยายามค้นหาสิ่งนี้เสมอ: คุณจะถาม apache ไฟล์ httpd.conf ที่เคยโหลดได้อย่างไร

มันกลายเป็นเรื่องยากเมื่อคุณมีอินสแตนซ์จำนวนหนึ่งที่ใช้งาน apache หรือหากคุณไม่ได้ดูที่เครื่องเป็นเวลานานและมีไฟล์ httpd.conf จำนวนมากบนดิสก์!

ขอบคุณมาก :)

คำตอบ:


44
apache2ctl -V | grep SERVER_CONFIG_FILE

การเล่นชนิดหนึ่ง โปรดทราบว่าไบนารีอาจถูกเรียกว่า apachectl สำหรับการกระจายหรือระบบปฏิบัติการที่แตกต่างกัน grep สำหรับ HTTPD_ROOT ด้วย - ค่าของ HTTPD_ROOT ที่รวมอยู่ใน SERVER_CONFIG_FILE จะให้เส้นทางแบบเต็มไปยังไฟล์ปรับแต่ง
Mihai Limbăşan

1
ในกรณีของฉัน: -D HTTPD_ROOT = "/ srv / www" -D SERVER_CONFIG_FILE = "/ etc / apache2 / httpd.conf"
vartec

ที่บันทึกไว้นี้วันของฉัน =) คุณยังสามารถลองเพียงhttpd.confในกรณีที่ SERVER_CONFIG_FILE apachectl -V | grep httpd.confเป็นชื่ออย่างอื่น:
Cyclonecode

2
อาจเป็น httpd -V
Lotus

สำหรับฉันคำตอบทำงานได้ดี แต่ฉันต้องแทนที่ apache2ctl ด้วย apachectl
skiabox


2

ในโยเซมิตีฉันพบว่ามันเป็น /Library/Server/Web/Config/apache2/httpd_server_app.conf

ถึงแม้ว่า apachectl -V | grep .conf

จะช่วยให้ -D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"


0

ตั้งแต่ 2559 ( Bug 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
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.