Como aplicar / redirecionar HTTP para HTTPS

2

Eu tenho hospedado um domínio em um servidor Win2003 nos últimos 3 ou 4 anos, mas agora preciso tornar esse domínio acessível somente via HTTPS.

Instalei o certificado corretamente e ele funciona bem (o servidor hospeda vários domínios, mas esse domínio está hospedado em um endereço IP público diferente), mas estou com dificuldades para conseguir que o IIS transfira todos os usuários que acessam link para o link .

Eu encontrei a opção "require secure channel" no IIS, mas verificar isso resulta em qualquer pessoa que falhe ao digitar a parte https:// vendo uma mensagem de erro (abaixo). Qual é a melhor maneira de redirecionar os usuários para o site HTTPS (sem que o usuário tenha que se preocupar com isso)?

The page must be viewed over a secure channel The page you are trying to access is secured with Secure Sockets Layer (SSL).

Please try the following:

Type https:// at the beginning of the address you are attempting to reach and press ENTER.

HTTP Error 403.4 - Forbidden: SSL is required to view this resource.

    
por Dan 30.10.2009 / 12:26

4 respostas

5

Redirecionando o HTTP para HTTPS usando o IIS

With SSL enabled, anytime you attempt to access a page via http, the server generates a 403.4 error. IIS is now configured to run your sslredirect.asp page every time this error occurs. The error page will include a querystring which contains the error number and the page causing the error, I.e. "403;http://www.whatever.com". Our ASP file uses a simple script to just trim off the beginning part (430;http), add the necessary "https", and redirect to whatever page the user requested using SSL. Voila!

    
por 30.10.2009 / 12:40
3

A maneira mais limpa é ter um filtro isapi reescrito mod instalado. E redirecione todas as chamadas http para https (ou apenas para uma pasta / página específica, se você preferir).

link

Heres um artigo que explica como fazer isso + menciona alguns dos outros sugeridos. link

    
por 30.10.2009 / 13:16
2

Confira o artigo da Base de Conhecimento da Microsoft Como redirecionar uma conexão HTTP para HTTPS para clientes do Outlook Web Access e como redirecionar o site padrão para apontar para o diretório virtual do Exchange .

Existem alguns passos para configurar isto corretamente; o código é:

<%

If Request.ServerVariables("HTTPS")  = "off" Then
Response.Redirect "https://" & Request.ServerVariables("HTTP_HOST") & "/Exchange"
End If 

%> 
    
por 30.10.2009 / 16:22
-1

Faça com que o seu firewall de publicação faça o redirecionamento. Ter chamadas que atinjam o servidor da Web real com o qual não está lidando com negócios parece desnecessário e pode até representar um risco de segurança.

    
por 30.10.2009 / 14:12