Dos hosts virtuales https en el mismo servidor: mismo puerto, diferentes subdominios

Dos hosts virtuales https en el mismo servidor: mismo puerto, diferentes subdominios

Intenté buscar este escenario, pero parece que no puedo encontrar exactamente esta configuración. Quiero tener algo como lo siguiente:

Quiero que dos subdominios se redireccionen a diferentes sitios https con diferentes raíces de documentos. El certificado SSL que tenemos es a nivel de dominio (*ejemplo.com). Lo siguiente no parece funcionar, ya que cuando coloco más de un host virtual para cada puerto, aparece "Esta página web no está disponible". ¿Alguna sugerencia?

NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
  ServerName subdomain1.example.com
  RedirectPermanent / https://subdomain1.example.com
</VirtualHost>
<VirtualHost *:80>
  ServerName subdomain2.example.com
  RedirectPermanent / https://subdomain2.example.com
</VirtualHost>
<VirtualHost *:443>
  DocumentRoot /srv/www/subd1/
  ServerName subdomain1.example.com
  # more directives
</VirtualHost>
<VirtualHost *:443>
  DocumentRoot /srv/www/subd2/
  ServerName subdomain2.example.com
  # more directives
</VirtualHost>

Tenemos el DNS que dirige tanto subdominio1.example.com como subdominio2.example.com a la dirección IP de nuestro servidor.

Editar: Se corrigió un error en la configuración de ejemplo (sin directiva ServerName) y se agregó información sobre nuestro DNS.

Respuesta1

Su muestra de configuración debería funcionar (suponiendo que haya configurado correctamente las entradas DNS correspondientes a esos hosts virtuales para resolverlas en el servidor en cuestión), pero no parece haber incluido ServerNamedirectivas; intente lo siguiente (suponiendo que no sea así). solo un error en la construcción de su configuración de ejemplo):

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
  ServerName subdomain1.example.com
  RedirectPermanent / https://subdomain1.example.com
</VirtualHost>

<VirtualHost *:80>
  ServerName subdomain2.example.com
  RedirectPermanent / https://subdomain2.example.com
</VirtualHost>

<VirtualHost *:443>
  DocumentRoot /srv/www/subd1/
  ServerName subdomain1.example.com
  # more directives
</VirtualHost>

<VirtualHost *:443>
  DocumentRoot /srv/www/subd2/
  ServerName subdomain2.example.com
  # more directives
</VirtualHost>

información relacionada