_default_ VirtualHost bağlantı noktası 443'te çakışıyor, ilk önceliğe sahip


64

Her ikisi de SSL ile aynı sunucuda çalışan 3 uygulama (ubuntu 10.04) raylarında iki yakut var.

İşte benim apache yapılandırma dosyası:

<VirtualHost *:80>
ServerName example1.com
DocumentRoot /home/me/example1/production/current/public
</VirtualHost>
<VirtualHost *:443>
ServerName example1.com
DocumentRoot /home/me/example1/production/current/public
SSLEngine on
SSLCertificateFile /home/me/example1/production/shared/example1.crt
SSLCertificateKeyFile /home/me/example1/production/shared/example1.key
SSLCertificateChainFile /home/me/example1/production/shared/gd_bundle.crt
SSLProtocol -all +TLSv1 +SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
</VirtualHost>


<VirtualHost *:80>
ServerName example2.com
DocumentRoot /home/me/example2/production/current/public
</VirtualHost>
<VirtualHost *:443>
ServerName example2.com
DocumentRoot /home/me/example2/production/current/public
SSLEngine on
SSLCertificateFile /home/me/example2/production/shared/iwanto.crt
SSLCertificateKeyFile /home/me/example2/production/shared/iwanto.key
SSLCertificateChainFile /home/me/example2/production/shared/gd_bundle.crt
SSLProtocol -all +TLSv1 +SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
</VirtualHost>

Sorun nedir:

Sunucumu yeniden başlatırken bana şöyle bir çıktı veriyor:

 * Restarting web server apache2                                   
 [Sun Jun 17 17:57:49 2012] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
 ... waiting [Sun Jun 17 17:57:50 2012] [warn] _default_ VirtualHost overlap on port 443, the first has precedence

Googling'de neden bu meselenin geldiğini şöyle söylüyorum:

SSL temelli (tarayıcı güvenli Web sunucusunun sertifikasını kabul ettiğinde) uygun ad tabanlı sanal ana bilgisayarı tanımlayan HTTP isteğinden önce gerçekleştiği için, isme dayalı sanal konakları kullanamazsınız. Ad tabanlı sanal ana bilgisayarları kullanmayı planlıyorsanız, yalnızca güvenli olmayan Web sunucunuzla çalıştıklarını unutmayın.

Ancak aynı sunucu üzerinde iki ssl uygulamasının nasıl çalıştırılacağını çözemiyorum.

Biri bana yardım edebilir mi?


5
_default_Sağladığınız yapılandırmada hiç vhost yok , bu yüzden başka bir yerdeler. Çıktı nedir apache2ctl -S? (Evet, Windows XP çalıştıran istemci tarayıcıları veya TLS SNI'yi desteklemeyen diğerlerini desteklemeniz gerekmedikçe, farklı sertifikalarda birden çok SSL ad tabanlı birden fazla ana bilgisayar çalıştırmak mümkündür. XP?)
Shane Madden

Yanıtlar:


87

Neredeyse!

Bunu ports.conf veya http.conf dosyasına ekleyin ve yukarıdaki ayarlarınızı koruyun.

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.

    # !important below!
    NameVirtualHost *:443 
    Listen 443
</IfModule>

!. Comment "# önemli Aksi takdirde, benim için yanlış hata mesajını yorumlamak için çok teşekkür ederim kaldırılması veya başka bir satıra taşınmış olması gerekir.
flickerfly

3
Bu artık Apache
2.4.7'de çalışmıyor

Teşekkür ederim. O da benim bireysel conf.d / website.conf yapılandırmasında kullanılan çünkü ben açıklama 443 Listen için gerekli buldum
dlink

3

Ayrıca "/ usr / sbin / apachectl -S" komutunu da yürütmeme yardımcı oldu. Bu komut çıkışı aynı yolda İKİ "ssl.conf" dosyalarını gösterir. Suçlu dosyasını taşıyın veya silin; her şeyden sonra çalışmalıdır.


1

Bunu apache config'inize şu adresten ekleyebilirsiniz /etc/apache2/ports.conf:

<IfModule mod_ssl.c>                
    Listen 443                      
    <IfModule !mod_authz_core.c>    
        # Apache 2.2                
        NameVirtualHost *:443       
    </IfModule>                     
</IfModule>                         

(Bu, her ikisinde de çalışır: apache 2.2 ve 2.4)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.