Não tenho certeza se há outras coisas também, mas você tem o mesmo servidor alias site.com em ambos os virtualhosts - você não precisa de uma diretiva serveralias, então você deve soltar isso do virtualhost de correio, pois isso é uma causa de alguns dos seus problemas.
FWIW, eu tenho uma configuração similar em uma das minhas configurações (mas para 2 domínios totalmente diferentes). Diferenças nas nossas configurações são:
-
Eu uso uma diretiva NameVirtualHost *: 443 (embora eu não tenha certeza se isso é mesmo exigido em tudo mais)
-
Eu uso < Virtualhost *: 443 > para vincular meus sites
Outros comentários -
Para o correio virtualhost, como você está fazendo um redirecionamento, você pode ter um virtualhost muito mais simples - eu tentaria algo como
<VirtualHost *:443>
ServerName mail.site.com
SSLEngine On
SSLCertificateFile "C:\SSL\mail_site\cert.crt"
SSLCertificateKeyFile "C:\SSL\mail_site\privkey.key"
RewriteEngine On
RewriteRule ^/(.*) https://example.com/mail/$1 [L,R]
</VirtualHost>
(Eu tive que usar example.com em vez de site.com na regra de reescrita acima - mudar conforme apropriado - Este parece ser um limite deste site!)