ใครช่วยบอกฉันทีว่าฉันทำอะไรผิด ฉันมีเซิร์ฟเวอร์ 1 เครื่องที่ใช้ Apache 2.4 โดยมี 3 VirtualHosts อยู่ในนั้น ตั้งค่าด้วยวิธีนี้:
<VirtualHost helpedsk.example.com:80>
ServerAdmin [email protected]
DocumentRoot "${SRVROOT}/htdocs/hesk"
ServerName helpdesk.example.com
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
<Directory "${SRVROOT}/htdocs/hesk">
Require all granted
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost wiki.example.com:80>
ServerAdmin [email protected]
DocumentRoot "${SRVROOT}/htdocs/dokuwiki"
ServerName wiki.example.com
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
<Directory "${SRVROOT}/htdocs/dokuwiki">
Require all granted
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost docs.example.com:80>
ServerAdmin [email protected]
DocumentRoot "${SRVROOT}/htdocs/drupal"
ServerName docs.example.com
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
<Directory "${SRVROOT}/htdocs/drupal">
Require all granted
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
แต่ด้วยเหตุผลบางอย่างอันสุดท้ายเท่านั้นที่ใช้งานได้ อันแรกแสดงให้ฉันเห็นรูทเอกสารของเซิร์ฟเวอร์ (โดยไม่ต้องใช้ hesk) และอันที่สองเข้าสู่การเปลี่ยนเส้นทางไม่จำกัดไปยังตัวมันเอง และฉันไม่สามารถเข้าใจได้ว่าทำไม อันที่สองน่าจะเป็น ต้องทำเพราะฉันตั้งค่าให้ชี้ไปที่เซิร์ฟเวอร์ ip/dokuwiki ที่ฉันสามารถเปลี่ยนได้ในภายหลัง แต่ทำไมอันแรกถึงไม่ hesk?
ไซต์เหล่านี้ทำงานได้ดีเมื่อเข้าถึงโดยใช้ serverip/site แต่เมื่อพยายามเข้าถึงด้วยชื่อ ไซต์สุดท้ายเท่านั้นที่ใช้งานได้