Apache2 vhosts ไม่ตอบสนองบนคำสั่งชื่อเซิร์ฟเวอร์


1

ฉันมีอินสแตนซ์ apache ที่ทำงานบน Debian squeeze โดยมีโฮสต์เสมือนสองชุดที่กำหนดไว้ (รวมถึงการเปลี่ยนเส้นทางจากพอร์ต 80 ไปยังพอร์ต 443 มี Vhosts สองตัวรับฟังพอร์ต 80 และหนึ่งในโฮสต์ vhosts ที่เปลี่ยนเส้นทางไปยังพอร์ต 443

จะเกิดอะไรขึ้น: เยี่ยมชมhttp://aspen.findyourtrees.netและรับเทมเพลต WordPress ที่ยังไม่เสร็จสำหรับเว็บไซต์ www

เยี่ยมชมhttps://qat.quoteatree.comและคาดว่าจะเห็นแบบฟอร์มเข้าสู่ระบบสำหรับเว็บแอปที่ปลอดภัย ... แต่เบราว์เซอร์จะส่งคืนเซิร์ฟเวอร์ที่ไม่ตอบสนองข้อผิดพลาดแทน (บันทึกรูปแบบhttp s )

เยี่ยมชมhttps://aspen.findyourtrees.netและฉันเห็นแบบฟอร์มการเข้าสู่ระบบที่ฉันคาดว่าจะเห็นสำหรับhttps://qat.quoteatree.com (สังเกตรูปแบบของ http )

ฉันไม่สามารถเข้าใจปัญหาการกำหนดค่าที่ทำให้เซิร์ฟเวอร์ไม่สามารถตอบกลับข้อความค้นหาสำหรับ qat.quoteatree.com

ดังนั้นนี่คือการกำหนดค่า Apache ของฉัน (รุ่นเซิร์ฟเวอร์: Apache / 2.2.16 (Debian))

aspen:/etc/apache2# cat ports.conf
#This file generated via template by Chef.
Listen 80
NameVirtualHost *:80

Listen 443
NameVirtualHost *:443


aspen:/etc/apache2# cat ./sites-enabled/wordpress.conf
<VirtualHost *:80>
  ServerName aspen.findyourtrees.net
  ServerAlias www.quoteatree.com

  DocumentRoot /var/www/wordpress

  <Directory /var/www/wordpress>
    ...
  </Directory>

  <Directory />
    ...
  </Directory>

  RewriteEngine On
</VirtualHost>


aspen:/etc/apache2# cat ./sites-enabled.qat.conf
<Proxy *>
Order allow,deny
Allow from all
</Proxy>

<VirtualHost *:80>
ServerName qat.quoteatree.com
Redirect / https://qat.quoteatree.com:443/
</VirtualHost>

<VirtualHost *:443 %>
ServerName  qat.quoteatree.com
ServerAdmin ops@findyourtrees.com

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLCertificateKeyFile /etc/apache2/ssl/apache.key

ProxyPass / http://localhost:8080/ 
ProxyPassReverse / http://localhost:8080/
</VirtualHost>

ดัมพ์ของ apache ที่คิดว่า vhosts คือ:

 aspen:/etc/apache2# apachectl -t -D DUMP_VHOSTS
 [Mon Dec 19 23:44:03 2011] [error] (EAI 2)Name or service not known: Could not resolve    
 host name % -- ignoring!
 VirtualHost configuration:
 wildcard NameVirtualHosts and _default_ servers:
 *:443                  is a NameVirtualHost
     default server qat.quoteatree.com (/etc/apache2/sites-enabled/qat.conf:11)
     port 443 namevhost qat.quoteatree.com (/etc/apache2/sites-enabled/qat.conf:11)
 *:80                   is a NameVirtualHost
     default server qat.quoteatree.com (/etc/apache2/sites-enabled/qat.conf:6)
     port 80 namevhost qat.quoteatree.com (/etc/apache2/sites-enabled/qat.conf:6)
     port 80 namevhost aspen.findyourtrees.net (/etc/apache2/sites-enabled/wordpress.conf:1)
Syntax OK

1
อะไรคือ%คำจำกัดความของคำสั่ง VirtualHost?
Garrett

@gman --- นั่นเป็นคำถามที่ดีสมมติว่าคุณหมายถึงข้อความจากผลลัพธ์ DUMP_VHOSTS อย่างที่คุณเห็นในการกำหนดค่าโฮสต์ของฉันไม่มีอะไรที่อธิบายได้ ฉันไม่พบสิ่งใดที่อ้างอิงหรืออธิบายมัน ฉันมีเซิร์ฟเวอร์ทดสอบ (ที่มีโดเมนแตกต่างกัน) ตั้งค่าและไฟล์ conf เหมือนกัน (ยกเว้นชื่อโดเมน) และข้อความ '% ชื่อโฮสต์' ก็ปรากฏขึ้นเช่นกัน แต่การกำหนดค่านั้นใช้งานได้
lhagemann

ไม่มีคุณจริงๆมีหนึ่งในports.confไฟล์ที่ยกมาของคุณ <VirtualHost *:443 %>
Garrett

โอ้ขอบคุณ gman ไม่เห็นว่า (และปัญหาก็คือว่าฉันมีบางสิ่งใน/etc/hostsไฟล์ของฉันที่เอาชนะ DNS ซึ่งทำให้ฉันรู้สึกงี่เง่าจริงๆ
lhagemann

คำตอบ:


0

นี่เป็นเรื่องน่าอาย แต่ปัญหาก็อยู่ใน/etc/hostsไฟล์ของฉันมาตลอด

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