ฉันมีไซต์ไม่กี่แห่งที่ได้รับการกำหนดค่าเป็น VirtualHosts โดยใช้ Apache ซึ่งทำงานได้ดีมาระยะหนึ่งแล้ว ฉันเพิ่งเปลี่ยนชื่อโฮสต์ของเซิร์ฟเวอร์เป็นหนึ่งในชื่อโดเมนที่ให้บริการและยังเพิ่มลงใน / etc / โฮสต์ที่ชี้ไปยังที่อยู่ IP ภายนอกของเซิร์ฟเวอร์
ตั้งแต่ฉันทำเช่นนั้นการเข้าถึงโดเมนจากแล็ปท็อปของฉันจะนำฉันไปสู่การเริ่มต้นของ Apache "มันใช้งานได้!" หน้า. หากฉันลบ 000- ค่าเริ่มต้นจาก / etc / apache2 / sites-enabled / มันจะแสดงเว็บไซต์ที่ถูกต้อง พยายามเข้าถึงเว็บไซต์ด้วย 'www.' คำนำหน้านำฉันไปยังไซต์ที่ถูกต้องไม่ว่าจะเป็น 000- ค่าเริ่มต้นอยู่ในเว็บไซต์ที่เปิดใช้งาน
จากทั้งหมดนั้นฉันเดาว่าการกำหนดค่าเริ่มต้นจะแสดงหน้าเริ่มต้นเนื่องจากวิธีที่ฉันกำหนดค่าชื่อโฮสต์หรือ / etc / hosts (หรือทั้งสองอย่าง) แต่ฉันไม่สามารถหาวิธีปิดใช้งานในขณะที่ ออกจากการตั้งค่าเหล่านั้นตามที่พวกเขาเป็น ข้อเสนอแนะใด ๆ ยินดีต้อนรับ!
แก้ไข - การกำหนดค่า VirtualHost ปัจจุบันของฉันมีลักษณะดังนี้:
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
ServerAdmin me@domain.com
DocumentRoot /srv/www/domain
ErrorLog /srv/www/domain/logs/error.log
CustomLog /srv/www/domain/logs/access.log combined
</VirtualHost>
เพื่อสรุป:ฉันมี VirtualHosts ตั้งค่าหลายตัวและนี่เป็นเพียงโปรแกรมเดียวที่ทำงานไม่ถูกต้อง ฉันสามารถเข้าถึงhttp://www.domain.com ได้ดี แต่http://domain.comพาฉันไปที่ค่าเริ่มต้นของ Apache "ใช้งานได้!" หน้า. หากฉันปิดการใช้งานการกำหนดค่าเริ่มต้น 000 รายการจะแสดงหน้าเว็บที่เหมาะสม สิ่งนี้เริ่มเกิดขึ้นหลังจากฉันตั้งชื่อโฮสต์ของเซิร์ฟเวอร์เป็น domain.com และเพิ่มบรรทัดไปยัง / etc / โฮสต์ชี้ domain.com ไปยังที่อยู่ IP ภายนอกของเซิร์ฟเวอร์ ฉันต้องการปล่อยให้เป็นอย่างนั้นถ้าเป็นไปได้
แก้ไข:ฉันวิ่งapache2ctl -S
ตั้งแต่/usr/sbin/apache2 -S
ให้ฉัน "apache2: ชื่อผู้ใช้ที่ไม่ดี $ {APACHE_RUN_USER}" นี่คือผลลัพธ์:
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server domain.com (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost domain.com (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost other.com (/etc/apache2/sites-enabled/other:1)
port 80 namevhost another.com (/etc/apache2/sites-enabled/another:1)
port 80 namevhost domain.com (/etc/apache2/sites-enabled/domain:1)
Syntax OK