Então eu suponho que você tenha o ELB configurado para aceitar tráfego tanto no HTTP / 80 quanto no HTTPS / 443, mas redirecione tudo para HTTP.
Se você quiser usar seu método (que é inteligente), tem certeza de que o que obtém não é %{X-Forwarded-Proto}
- o prefixo HTTP:
parece estranho para mim. Fora isso, isso parece certo para mim.
Se isso estiver em um host virtual ou na configuração principal do servidor e ainda não estiver funcionando, você poderá adicionar
RewriteLog rewrite-log
RewriteLogLevel 3
veja o arquivo rewrite-log
para ver o que realmente está acontecendo. Este arquivo pode ser incrivelmente detalhado, comece com níveis mais baixos. O log não pode ser iniciado a partir de .htaccess
files.
(Sugiro que você faça os sinalizadores em RewriteRule
[R=301,L]
, o que fará com que o servidor envie uma resposta 301, que instrua os mecanismos de pesquisa a considerarem o redirecionamento permanente e atualize seus links de acordo.)