
Quero criar um site http:http://exemplo1.come um site https:https://example2.comusando a seguinte configuração:
Listen 80
Listen 443
NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
ServerName example1.com
DocumentRoot /var/www/example1.com/public_html
</VirtualHost>
<VirtualHost *:443>
ServerName example2.com
DocumentRoot /var/www/example2.com/public_html
SSLCertificateFile...
SSLCertificateKeyFile...
SSLEngine On
</VirtualHost>
No entanto, se eu visitarhttps://example1.com, sou redirecionado parahttps://example2.com. Se eu visitarhttp://example2.com, sou redirecionado parahttp://exemplo1.com. Não é isso que eu quero. Gostariahttps://example1.comehttp://example2.comnão existem de forma alguma. Como eu devo fazer?
Responder1
Vocêvaitem que definir mais dois blocos VirtualHost. Se o Apache não conseguir encontrar um VirtualHost correspondente para esse nome, ele usará o primeiro VirtualHost pertencente à porta.
Claro, você não precisa servir o mesmo site:
- Você pode veicular uma página de erro, como uma página genérica404 não encontrado. Isso vai irritar as pessoas.
- Para
example2.com
, você pode usar um RewriteRule para redirecionar todos os visitantes HTTP para HTTPS. - Pois
example1.com
... bem, eu realmente não entendo por que você não serviria isso via HTTPS?
No entanto, você não pode fazer com que o navegador informe que o domínio não existe, porque ainda é o mesmo domínio, independentemente de como é acessado.