A atual versão estável do Apache (2.2) não tem esse recurso, mas o 2.4 tem o Diretriz IF .
Você tem que criar dois VirtualHosts por enquanto, mas você pode definir algumas coisas através do ambiente ou apache variáveis globais e usar isso em sua configuração virtualhost (configurando o documentroot por exemplo). Desta forma, se você quiser mudar isso, você pode fazê-lo com apenas uma linha de modificação.
Claro, você pode usar o include para fazer algo assim:
<VirtualHost *:80>
include /etc/apache2/vhost.conf.d/site1
</VirtualHost>
<VirtualHost *:443>
include /etc/apache2/vhost.conf.d/site1
include /etc/apache2/vhost.conf.d/site1-ssl
</VirtualHost>
ps: SNI será mainstream anos antes da adaptação IPv6. Todo o navegador mainstream o suporta já assumindo que você está em um sistema operacional suportado.
edite: como fooquency spotted você não pode colocar SSLEngine em um bloco If então minha resposta está errada.