Comparar Certificados SSL
Redirecionar todo o tráfego de HTTP para HTTPS no IIS7 irá garantir que seus usuários sempre acessem o site com segurança. Há muitas maneiras diferentes de configurar um IIS7 Redirecionar de HTTP para HTTPS e algumas são melhores do que outras. O redirecionamento HTTP ideal para HTTPS faria o seguinte:
- Redirecionar gentilmente os usuários para HTTPS para que os usuários não tenham que digitar “https” na URL
- Redirecionar usuários para a página específica para a qual eles iriam em HTTP (page.htm)
- Salvar quaisquer variáveis passadas na string de consulta (?page=2)
- Trabalhar em todos os navegadores
- Transferir PageRank para a página redirecionada usando um redirecionamento 301, mantendo SEO
- Permitir que partes específicas de um site forcem SSL mas permitam HTTP em outras partes do site
- Redirecionar usuários do mydomain.com para www.mydomain.com
Felizmente, não há uma maneira fácil de satisfazer todos estes requisitos, e a maioria dos métodos satisfaz apenas alguns deles. O melhor método de fazer um redirecionamento HTTP para HTTPS que vi envolve usar o ASP.Net para fazer o redirecionamento HTTP para HTTPS.
Mas a maioria das pessoas não precisa de todos esses recursos, então eu listei dois dos melhores métodos de redirecionamento de HTTP para HTTPS no IIS 7. Eles são fáceis de configurar e eficazes na maioria das situações. Note que estes métodos também devem funcionar no IIS 8 e no IIS 10 com algumas pequenas modificações.
Método 1 – Usando o Microsoft URL Rewrite Module
Para este método de redirecionamento de HTTP para HTTPS, você precisará fazer o seguinte;
- Instale o Módulo de Reescrita da URL da Microsoft
- Instale o seu certificado SSL no IIS 7 e vincule-o ao seu website
- Certifique-se de que Exigir SSL NÃO é verificado em Configurações SSL para seu website (desmarque as caixas que estão marcadas nesta captura de tela)
- Copiar e cole o seguinte código entre as tags <regras> e </regras> em sua web.config file in your website root directory.
<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> - Teste o site indo para http://www.yoursite.com e certificando-se de que ele redireciona para
Método 2 – Configurando uma página de erro personalizada
O segundo método de configuração de um redirecionamento IIS7 HTTP para HTTPS é Exigir SSL no site ou parte do site e configurar uma página de erro personalizada 403.4. Para fazer isso, basta seguir estes passos:
- Instale o seu certificado SSL no IIS 7 e ligue-o ao seu site
- No IIS, clique no nome do site, e vá para a secção Configurações SSL
- Cheque Require SSL e Require 128-bit SSL e clique em Apply
- Depois de fazer isto, os utilizadores receberão normalmente este erro:
-
Criar um novo ficheiro de texto e colar o seguinte:
<html>
<head><title>Redirecting...</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> - Guardar o ficheiro como redireccionamentoToHttps.htm no seu diretório C:\Inetpub
- Voltar no IIS, clique no nome do site e clique duas vezes na opção Error Pages
- Click Add… e digite 403.4 como o código Status. Procure o ficheiro redirectToHttps.htm que acabou de criar e clique em OK
- Seleccionar o código de erro e prima Edit Feature Settings…
- Clique na opção Custom error pages e volte a procurar o redirectToHttps.htm file
- Teste o site indo para http://www.yoursite.com e certificando-se de que ele redireciona para
Uma advertência de usar uma página de erro personalizada para fazer um redirecionamento IIS7 de HTTP para HTTPS é que o navegador web deve ter o JavaScript habilitado para que o redirecionamento funcione.
Outros métodos para IIS7 Redirecionar HTTP para HTTPS:
- Redirecionar de Http para Https em ASP.NET
- Suporte Microsoft – Como redirecionar uma conexão HTTP para HTTPS para clientes do Outlook Web Access e como redirecionar o Web Site Padrão para apontar para o diretório virtual Exchange
- IIS 6 Redirecionar HTTP para HTTPS
- Comutação entre HTTP e HTTPS como um grande hotshot
Originalmente postado em Sat Fev 27, 2010