Automático IIS6 403.4 redirecionar para SSL não funciona
-
18-09-2019 - |
Pergunta
Eu tenho um único diretório no meu ASP.Net site que eu preciso ter o SSL Habilitado.Para todos os outros diretórios, eu não quero SSL Habilitado.
Usando o IIS, verifiquei a Exigir canal de segurança (SS) e a criptografia de 128 bits caixas de verificação para a pasta que eu quero para exigir SSL.
Agora, quando um usuário digita em "http://", para o meu diretório seguro, eu quero automaticamente redireciona-los para "https://".Eu tentei duas abordagens, e ambos falharam.
Abordagem 1:Alterar o IIS Personalizados Erros de página para o diretório para 403;4 para uma URL apontando para :"/Intranet2/SSLRedirect.aspx".O SSLRedirect irá apontá-los para o site correto.Quando faço isso, recebo O pedido especificado não pode ser executado a partir do Pool de aplicativos atual" erro", mesmo que o url é uma parte do site, e só tenho uma pool de aplicativos para o site inteiro (não o DefaultAppPool).
Abordagem 2:Adicionar uma web.configuração no diretório para substituir a 403 do código de erro.Este aspecto:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<customErrors defaultRedirect="../Default.aspx" mode="On">
<error statusCode="403" redirect="../SSLRedirect.aspx" />
</customErrors>
</system.web>
</configuration>
Mas quando eu fizer essa alteração, eu sempre fico com o padrão 403.4 definidas no IIS.
Alguma sugestão?
Solução
Abordagem 1:Você parece ser enganado em pensar que você só tem um pool de aplicativos configurados para o site inteiro.Você provavelmente tem uma para o site padrão e outra para um diretório virtual que você está trabalhando.Suas opções são :
a) Reconfigurá-lo para que você realmente tem um pool de aplicativos para o site inteiro,
b) Servir a página de erro de um diretório que esteja no mesmo pool de aplicativos como a página de gerar o erro
c) Ajustar o registro para encerrar este erro de fora:Conjunto IgnoreAppPoolForCustomErrors para 1 em HKLM\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters .Ver http://blogs.msdn.com/b/rakkimk/archive/2006/09/01/735684.aspx
Abordagem 2:Erros personalizados na web.configuração são usadas somente se asp.net é o erro de processamento.Eu acredito que o IIS não é envolvente asp.net a manipulação do mecanismo aqui porque a seleção ssl falhou.Portanto, esta simplesmente não funciona aqui.