403.4 não irá redirecionar no IE7

1

Eu tenho uma pasta segura que requer SSL. Eu configurei no IIS (6) para exigir SSL. Não queremos que os visitantes sejam recebidos com o erro "deve ser uma conexão segura", por isso modifiquei a página de erro 403.4 para conter o seguinte:

<script type="text/javascript">
function redirectToHttps()    {

    var httpURL = window.location.hostname+window.location.pathname;

    var httpsURL = "https://" + httpURL ;

    window.location = httpsURL ;

}
redirectToHttps();
</script>

E esta solução funciona bem para todos os navegadores, mas para o IE7. Em qualquer outro navegador, se você digitar o link , ele será redirecionado automaticamente para link sem mensagem ou qualquer coisa (a ação pretendida). Mas no Internet Explorer 7 SOMENTE aparecerá uma página que diz

The website declined to show this webpage
Most Likely Causes:
This website requires you to log in

Isso é algo que não queremos, é claro. Eu verifiquei que o javascript está habilitado, e as configurações de segurança não têm efeito, mesmo quando eu configurá-los para o nível mais baixo recebo o mesmo erro.

Eu estou querendo saber, alguém já viu isso antes?

    
por Jeremy Morgan 24.03.2010 / 23:40

2 respostas

2

Meu palpite é que o recurso "Mensagem de erro amigável" do IE está substituindo sua página de erro por uma que acha mais fácil para as pessoas entenderem. De acordo com este artigo do kb , a "mensagem de erro amigável" não é usada quando a resposta do servidor é grande o suficiente e sugere preenchimento sua página de erro personalizada com espaços até que seja.

    
por 15.10.2010 / 14:50
0

Eu nunca experimentei isso antes, mas eu me pergunto por que você usa javascript para fazer isso? Já tentou com o

<meta http-equiv="REFRESH" content="0;url=http://www.the-domain-you-want-to-redirect-to.com"> ?

A maneira como lidei com esse problema foi fácil, já que uso o ASP.NET. Você faz uma classe de página abstrata ou HttpModule (aplicativo da Web inteiro) que verifica se (!Request.IsSecure) ... redireciona com um 301 para proteger a página.

Essa coisa legal de fazer isso do lado do servidor é que ele funcionará sem o javascript. Tenho certeza que você pode fazer o mesmo em qualquer idioma (Java, PHP, Ruby mesmo c ++ se você é da velha escola).

    
por 25.03.2010 / 03:48