The Apache httpd documentation says that name based virtual hosts don't work with SSL. But our sites are working in a configuration like that!
In site1.conf, we have
<VirtualHost *:443>
ServerName site1:443
DocumentRoot /var/www/site1
ErrorLog /var/log/apache2/site1.error.log
TransferLog /var/log/apache2/site1.access.log
SSLEngine on
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
SSLCertificateFile /etc/apache2/keys/trac.crt
SSLCertificateKeyFile /etc/apache2/keys/trac.key
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
...
</VirtualHost>
The other site is almost identical, but with site2 instead of site1. As far as I can tell, we are either very lucky, or I don't understand the documentation. The two URLs work, and they serve different content via HTTPS.
Could someone please shed some light?