Redirect automatico da HTTP a HTTPs

Daniele Bochicchio

di , in Classic ASP, Coding,

In moltissime applicazioni web si decide di utilizzare un canale SSL, che garantisce una protezione di tutti i dati che viaggiono sul canale HTTPS che il semplice HTTP non può garantire.
In casi come questi può ritornare utile, più che disabilitare la visualizzazione in modalità HTTP da IIS, prevedere un semplice meccanismo di redirect.
Per fare questo ci basterà ricavare il percorso corrente, verificare se la connessione è protetta ed agire di conseguenza.

<%

' siamo su server sicuro?
server_sicuro = Request.ServerVariables("HTTPS")

'path completo
host = Request.ServerVariables("HTTP_HOST")
page = Request.ServerVariables("SCRIPT_NAME")
qryStr = Request.QueryString

url = host
url = url & page

if len (qryStr) >0 then
  url = url & "?" & qryStr
end if

' redir su corrispondente HTTPS
if UCase(server_sicuro) <> "ON" then
  Response.Redirect("https://" & url)
end if

%>

E' sufficiente includere questo codice in tutte le pagine, attraverso un include, per avere un controllo completo su ogni pagina.

Approfondimenti


#178 - Ricavare l'indirizzo completo della pagina che esegue lo script
http://www.aspitalia.com/liste/usag/script.aspx?ID=178