Redirecionar IIS7 HTTP para HTTPS

Olá pessoal,

Hoje vamos passar para vocês como redirecionar todo o tráfego de seu site ou sistema usando http para https, para seus usuários com mais segurança. Hoje vamos passar para vocês apenas dois métodos de como redirecionar todo o seu site de http para https. Existem vários modos de fazer o redirecionamento, um deles pode ser feito diretamente por sua linguagem de programação, verificando se o tráfego é http ou https e se caso for http ele reenvia a solicitação para a url e manda pro usuário.

Com estes métodos que iremos ensinar, o usuário não perderá a URL em que ele está atualmente, além de ser amigável pro Google, caso seu site já seja indexado pelos motores de busca, isso irá contribuir para que seu site não perca as URLS já indexadas e que o robô do buscador entenda que você faz um redirecionamento correto.

Primeiro método: Usando Mod Rewrite do IIS

Para que esse método funcione, você precisa ter o módulo do URL Rewrite em seu servidor. Geralmente, quando você instalar o servidor IIS possui a opção para instalação deste módulo. Para instalar este módulo, há duas formas: Visitando este link e procurando o módulo do Mod Rewrite ou você indo no programa Gerenciador do seu Servidor e modifique a instalação atual do servidor Web e adicione o módulo Rewrite.

Após confirmar que você possui este módulo, instale e vincule o certificado SSL em seu site.

Antes de continuar pro próximo passo, verifique se NÃO ESTÁ MARCADO o checkbox do módulo SSL no seu IIS. Este check não pode estar marcado, pois poderá dar erro neste método.

Redirecionar IIS de HTTP para HTTPS
Redirecionar IIS de HTTP para HTTPS

Copie e cole o código abaixo entre as tags <rules> </rules> do arquivo web.config que fica geralmente na raiz do seu site.

<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>

Agora abra seu site pelo navegador normalmente SEM USAR O HTTPS e verifique se ele redireciona automaticamente para HTTPS. Caso positivo e não apresente erros 500, pronto! Seu servidor agora redireciona para perfeitamente para https. Porém, se apresentou erro 500 desfaça o que foi feito neste método e siga para o próximo método.

Segundo método: Configurando uma página de erro personalizada

Este segundo método é recomendado para caso o primeiro método não funcione corretamente, este irá resolver. O que este método irá fazer é simples, vamos configurar o módulo SSL para que exija em todo o site o certificado e onde ele não conseguir exigir o certificado e apresentar o erro 403.4, iremos criar uma página de erro 403.4 personalizada e dentro dessa página iremos adicionar um código javascript para que redirecione manualmente para a página solicitada pelo usuário externamente.

Primeiro de tudo, instale o certificado no site.

Segundo, dentro do IIS, abra o módulo “Configurações de SSL”

Marque a opção “Require SSL”

Após isso, abra o navegador e abra seu site. Irá aparecer um erro 403.4

Crie um arquivo de texto com seu editor favorito e copie e cole o seguinte código abaixo:

<html>
 <head><title>Redirecionando...</title></head>
 <script language="JavaScript">
 function redirectHttpToHttps()
 {
     var httpURL= window.location.hostname + window.location.pathname + window.location.search;
     var httpsURL= "https://" + httpURL;
     window.location = httpsURL;
 }
 redirectHttpToHttps();
 </script>
 <body>
 </body>
 </html>

Salve o arquivo de texto como “redirecionar.htm” e salve dentro da pasta C:\Inetpub (lembre de salvar com a extensão .htm)

Volte ao IIS e abra o módulo “Páginas de erros”

Clique no link “Adicionar” no seu lado direito e na janela que abrir, preencha como indica a imagem, lembrando que no caminho do arquivo coloque o arquivo que você criou anteriormente.

Quando tiver preenchido, clique no botão OK e ainda no lado direito, clique no link “Editar configurações de recurso” e preencha novamente conforme indica a imagem abaixo.

Agora, clique na opção página de erros personalizadas e procure novamente pelo arquivo que você criou anteriormente.

Pronto, as configurações estão feitas. Abra seu navegador favorito e digite o endereço do seu site COM HTTP e verifique se todas as páginas internas estão sendo redirecionadas para https com sucesso.

Bom galera, por hoje é só! Espero que tenham gostado do conteúdo abordado mais voltado para servidores Windows e em breve estarei trazendo mais conteúdo relacionado a servidores de e-mail no Windows… aguardem!

abraço a todos 😉

Redirecionar IIS7 HTTP para HTTPS
5 (100%) 3 votos

Deixe uma resposta