Como você redireciona o HTTPS para o HTTP? Ou seja, o oposto do que (aparentemente) todo mundo ensina.
Eu tenho um servidor em HTTPS para o qual paguei uma certificação SSL e um espelho para o qual não tenho e permaneço por apenas emergências, para que não mereça obter uma certificação.
Nas áreas de trabalho do meu cliente, tenho ALGUNS atalhos que apontam para ( http://production_server
e https://production_server
ambos funcionam). No entanto, eu sei que se meu servidor de produção ficar inoperante, o encaminhamento de DNS será ativado e os clientes que possuem "https" no atalho estarão olhando https://mirror_server
(o que não funciona) e uma grande tela vermelha de inquietação do Internet Explorer 7 para a minha empresa.
Infelizmente, não posso simplesmente mudar isso no nível do cliente. Esses usuários são muito analfabetos no computador: e muito provavelmente surtam de ver erros de "insegurança" HTTPS (especialmente a maneira como o Firefox 3 e o Internet Explorer 7 lidam com isso hoje em dia: PARADA COMPLETA, meio que felizmente, mas não me ajudando aqui, LOL).
É muito fácil encontrar soluções Apache para redirecionamento http-> https , mas pela minha vida não posso fazer o contrário.
Ideias?
Respostas:
Isso não foi testado, mas acho que isso deve funcionar usando mod_rewrite
fonte
Lembre-se de que o mecanismo Rewrite só entra em ação após o recebimento da solicitação HTTP - o que significa que você ainda precisará de um certificado para que o cliente configure a conexão para enviar a solicitação!
No entanto, se a máquina de backup parecer ter o mesmo nome de host (no que diz respeito ao cliente), não deverá haver motivo para que você não possa usar o mesmo certificado que a máquina de produção principal.
fonte
Com base na resposta do ejunker, esta é a solução que funciona para mim, não em um único servidor, mas em um ambiente em nuvem
fonte
Para aqueles que estão usando um
.conf
arquivo.fonte
Se nenhuma das soluções acima funcionar para você (elas não funcionaram para mim), aqui está o que funcionou no meu servidor:
fonte
L,
(que significa "Última regra"). Se você estiver usando o wordpress ou outro CMS, oL
sinalizador poderá impedir que a solicitação da página seja roteada corretamente. Em vez disso, use:RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301]
todas as opções acima não funcionaram quando usei o cloudflare, este funcionou para mim:
e este definitivamente funciona sem proxies no caminho:
fonte
É melhor evitar usar mod_rewrite quando puder.
No seu caso, eu substituiria a reescrita por esta:
A
<If>
diretiva está disponível apenas no Apache 2.4+, de acordo com este blog aqui .fonte
/usr/sbin/httpd -v
isso funciona para mim.
certifique-se de ouvir as portas 80 e 443.
fonte
Nenhuma das respostas funciona para mim no site do Wordpress, mas funciona a seguir (é semelhante a outras respostas, mas tem uma pequena alteração)
fonte
Tanto quanto sei que uma simples atualização meta também funciona sem causar erros:
fonte