O redirecionamento do Apache do subdomínio ssl não está funcionando

2

Estou tentando redirecionar todo o tráfego para https e todos os subdomínios para o domínio principal e não consigo acertar. Estou usando o Ubuntu 14.04 com o mais recente apache2.

Eu configurei o virtualhost para a porta 80 para redirecionar todo o tráfego para https:

<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>

e configuração ssl virtualhost para redirecionar todos os subdomínios para o domínio principal:

    <IfModule mod_ssl.c>
<VirtualHost *:443>
     ServerAdmin [email protected]
     ServerName example.com
     ServerAlias *.example.com
     DocumentRoot /var/www/example.com/public_html/
     ErrorLog /var/www/example.com/logs/error.log
     CustomLog /var/www/example.com/logs/access.log combined
Include /etc/letsencrypt/options-ssl-apache.conf
Include /etc/letsencrypt/options-ssl-apache.conf
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/example.com-0001/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com-0001/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateChainFile /etc/letsencrypt/live/example.com-0001/chain.pem

Redirect permanent / https://example.com

</VirtualHost>

</IfModule>

O resultado é o seguinte:

COMO TRABALHAR link para link

TRABALHANDO link para link

NÃO ESTÁ FUNCIONANDO link para link

A pergunta é: como eu redireciono o subdomínio ssl para o domínio principal?

Por favor, me diga o que estou fazendo de errado.

Muito obrigado.

    
por Eduard Bakeš 31.12.2017 / 19:21

2 respostas

1

Dado que parece que Vamos Criptografar só começará em> emitindo certificados curinga em janeiro de 2018 e sua configuração do servidor é anterior, parece que você não está usando um certificado SSL curinga.

Para se conectar com https , mesmo para redirecionar ou processar seu "alias", você precisa ter um certificado SSL válido para qualquer domínio que o cliente enviar.

O handshake SSL ocorre antes de qualquer coisa no servidor Apache ser processado. Em outras palavras, se você não estiver usando um certificado SSL curinga, o handshake SSL falhará em https://anything.example.com antes o arquivo de configuração do Apache ter a chance de processar o alias.

Qualquer outra coisa que possa ser um problema, isso deve ser corrigido antes que qualquer outro diagnóstico, se necessário, possa ser feito. Por exemplo, se o comportamento desejado é que https://anything.example.com seja "redirecionado" para http://example.com , você provavelmente terá que usar um mod_rewrite condition match porque a diretiva RedirectMatch é correspondido apenas ao caminho da URL , e o uso de ServerAlias criará a correspondência necessária para manipular a consulta inicial, mas não tentará "reescrever" ou "redirecionar" a URL consulta para outro URL desejado.

    
por 01.01.2018 / 15:37
-1

O problema não pode ser resolvido com a versão atual do Let's Encrypt. Em 2018, eles lançarão uma nova versão com a funcionalidade de subdomínio curinga, que é exatamente o que eu preciso.

Obrigado a todos pelo seu esforço.

    
por 01.01.2018 / 19:56