Queremos que TODOS os sites em nosso servidor da Web (IIS 10) imponham o SSL (ou seja, redirecionem o HTTP para HTTPS).
No momento, estamos 'exigindo SSL' em cada site e configurando um 403 error
manipulador para executar um 302 redirect
endereço https no site específico.
Isso funciona muito bem. Mas é uma dor de se fazer em todos os sites, há muito espaço para erros humanos.
Idealmente, eu gostaria de criar uma permanente 301 redirect
em todas HTTP://*
aHTTPS://*
Existe uma maneira simples de fazer isso no IIS?
Respostas:
O IIS URL Rewrite Module 2.1 para IIS7 + pode ser seu amigo. O módulo pode ser baixado a partir do IIS URL Rewrite . Usando o URL Rewrite Module e a URL Rewrite Module 2.0 Reference Reference explicam como usar o módulo.
Após a instalação do módulo, você pode criar um redirecionamento para todo o host usando o Gerenciador do IIS. Selecione Regravação de URL , Adicionar Regra (s) ... e Regra em branco .
Nome:
Redirecionar para HTTPS
URL de correspondência URL
solicitado:
Matches the Pattern
Uso:
Wildcards
Padrão:
*
Ignorar maiúsculas e minúsculas: Verificado
Condições
Agrupamento lógico:
Match Any
Entrada da condição :
{HTTPS}
Verifique se a sequência de entrada:
Matches the Pattern
Padrão:
OFF
Ignorar maiúsculas e minúsculas: Verificado
Rastrear grupos de captura nas condições: Não verificado
Variáveis do servidor
Deixe em branco.
Ação
Tipo de ação:
Redirect
URL de redirecionamento:
https://{HTTP_HOST}{REQUEST_URI}
anexar sequência de consultas: Não marcado
Tipo de redirecionamento:
Permanent (301)
Aplique a regra e execute IISReset (ou clique em Reiniciar no Gerenciador do IIS)
Como alternativa, após a instalação do módulo, você pode modificar o arquivo applicationHost.config da seguinte maneira:
fonte
Minha pesquisa mostra que essa pode ser uma maneira melhor de redirecionar:
fonte