ค้นหาเว็บไซต์

วิธีแสดงรายการโฮสต์เสมือนทั้งหมดใน Apache Web Server


การกำหนดค่าโฮสต์เสมือนของ Apache ช่วยให้คุณสามารถเรียกใช้หลายเว็บไซต์บนเซิร์ฟเวอร์เดียวกัน ซึ่งหมายความว่าคุณสามารถเรียกใช้เว็บไซต์ได้มากกว่าหนึ่งเว็บไซต์บนเว็บเซิร์ฟเวอร์ Apache เดียวกัน คุณเพียงแค่สร้างการกำหนดค่าโฮสต์เสมือนใหม่สำหรับเว็บไซต์แต่ละแห่งของคุณ และรีสตาร์ทการกำหนดค่า Apache เพื่อเริ่มให้บริการเว็บไซต์

ใน Debian/Ubuntu ไฟล์การกำหนดค่า Apache เวอร์ชันล่าสุดสำหรับโฮสต์เสมือนทั้งหมดจะถูกจัดเก็บไว้ในไดเรกทอรี /etc/apache2/sites-available/ ดังนั้นจึงเป็นเรื่องยากมากที่จะอ่านไฟล์การกำหนดค่าโฮสต์เสมือนเหล่านี้ทั้งหมดเพื่อแก้ไขข้อผิดพลาดในการกำหนดค่า

เพื่อให้สิ่งต่าง ๆ ง่ายขึ้น ในบทความนี้ เราจะแสดงวิธีแสดงรายการโฮสต์เสมือน apache ที่เปิดใช้งานทั้งหมดบนเว็บเซิร์ฟเวอร์โดยใช้คำสั่งเดียวบนเทอร์มินัล วิธีนี้ยังช่วยให้คุณเห็นการกำหนดค่า Apache ที่มีประโยชน์อื่นๆ อีกด้วย

สิ่งนี้มีประโยชน์ในทางปฏิบัติในสถานการณ์ที่คุณช่วยเหลือบริษัทแก้ไขปัญหาเว็บเซิร์ฟเวอร์จากระยะไกล แต่คุณไม่ทราบการกำหนดค่าเว็บเซิร์ฟเวอร์ apache ปัจจุบันของบริษัทที่เกี่ยวข้องกับโฮสต์เสมือน

อ่านเพิ่มเติม: วิธีตรวจสอบว่าโมดูล Apache ใดเปิดใช้งาน/โหลดใน Linux

จะช่วยลดความยุ่งยากในการค้นหาโฮสต์เสมือนของเว็บไซต์เฉพาะในไฟล์กำหนดค่า apache และช่วยเหลือในการแก้ไขปัญหา apache ใดๆ โดยส่วนใหญ่ คุณจะเริ่มต้นด้วยการตรวจสอบโฮสต์เสมือนที่เปิดใช้งานในปัจจุบันก่อนที่จะดูบันทึก

หากต้องการแสดงรายการโฮสต์เสมือนที่เปิดใช้งานทั้งหมดบนเว็บเซิร์ฟเวอร์ ให้รันคำสั่งต่อไปนี้ในเทอร์มินัล

apache2ctl -S   [On Debian/Ubuntu]
apachectl -S    [On CentOS/RHEL]
OR
httpd -S

คุณจะได้รับรายชื่อโฮสต์เสมือนที่กำหนดค่าไว้ทั้งหมด รวมถึงการกำหนดค่าเซิร์ฟเวอร์ apache/httpd ที่สำคัญอื่นๆ

VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server api.example.com (/etc/httpd/conf.d/api.example.com.conf:1)
         port 80 namevhost api.example.com (/etc/httpd/conf.d/api.example.com.conf:1)
                 alias www.api.example.com
         port 80 namevhost corp.example.com (/etc/httpd/conf.d/corp.example.com.conf:1)
                 alias www.corp.example.com
         port 80 namevhost admin.example.com (/etc/httpd/conf.d/admin.example.com.conf:1)
                 alias www.admin.example.com
         port 80 namevhost tecmint.lan (/etc/httpd/conf.d/tecmint.lan.conf:1)
                 alias www.tecmint.lan
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex default: dir="/run/httpd/" mechanism=default 
Mutex mpm-accept: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex authdigest-client: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/run/httpd/httpd.pid"
Define: _RH_HAS_HTTPPROTOCOLOPTIONS
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48 not_used
Group: name="apache" id=48 not_used

จากผลลัพธ์ข้างต้น เราจะเห็นได้อย่างชัดเจนว่าพอร์ตและที่อยู่ IP ใดได้รับการกำหนดค่าสำหรับแต่ละเว็บไซต์ นอกจากนี้เรายังจะเห็นไฟล์การกำหนดค่าโฮสต์เสมือนของเว็บไซต์แต่ละไฟล์และตำแหน่งของไฟล์เหล่านั้น

สิ่งนี้มีประโยชน์มาก เมื่อคุณกำลังแก้ไขปัญหาหรือแก้ไขข้อผิดพลาดการกำหนดค่าโฮสต์เสมือน apache หรือคุณเพียงต้องการดูรายการสรุปโฮสต์เสมือนที่เปิดใช้งานทั้งหมดบนเว็บเซิร์ฟเวอร์

นั่นคือทั้งหมด! คุณอาจพบบทความที่เกี่ยวข้องต่อไปนี้บนเว็บเซิร์ฟเวอร์ Apache

  1. 3 วิธีในการตรวจสอบสถานะเซิร์ฟเวอร์ Apache และสถานะการออนไลน์ใน Linux
  2. 13 เคล็ดลับความปลอดภัยและความแข็งแกร่งของ Apache Web Server
  3. วิธีการเปลี่ยนไดเรกทอรี Apache 'DocumentRoot' เริ่มต้นใน Linux
  4. วิธีซ่อนหมายเลขเวอร์ชัน Apache และข้อมูลที่ละเอียดอ่อนอื่น ๆ

หากคุณมีคำถามใด ๆ เกี่ยวกับเซิร์ฟเวอร์ Apache HTTP ให้ใช้แบบฟอร์มความคิดเห็นด้านล่างเพื่อติดต่อเรา