Frage:
Wie kann man einen VirtualHost auf SSL umstellen?
Lösung:
Einfach den vorhanden
NameVirtualHost my.ip:443
<VirtualHost my.ip:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl.crt/mydomain.crt
SSLCertificateKeyFile /etc/apache2/ssl.key/mydomain.key
SSLCACertificateFile /etc/apache2/ssl.crt/chain.crt
#ErrorLog /var/log/apache2/ssl_error_log
#CustomLog /var/log/apache2/ssl_request_log ssl_combined
[...und der übliche Rest...]
</VirtualHost>
Zu beachten:
Pro IP kann immer nur eine Domain auf SSL reagieren. Das liegt an der Art, wie SSL funktioniert. Denn erst wird der SSL-Handshake durchgeführt und dann der HTTP-Header übergeben. Aber erst im HTTP-Header steht die verlangte Domain. Daher muß Apache bereits zum SSL-Handshake die nötigen SSL-Daten haben; sprich es darf nur eine SSL-Domain geben.
Ausnahmen kann man mit selbst erzeugten Zertifikaten machen, wenn man jeweils das selbe Cert benutzt.