Condividi tramite


Usare ASP per forzare SSL per pagine specifiche

Questo articolo descrive come usare Active Server Pages (ASP) per forzare Secure Sockets Layer (SSL) per pagine specifiche senza apportare modifiche a MMC.

Versione originale del prodotto: Pagine di Microsoft Active Server
Numero KB originale: 239875

Riepilogo

Spesso è consigliabile usare SSL per determinate pagine di un sito Web. Anche se questo può essere configurato tramite Internet Services Manager (ISM) in Microsoft Management Console (MMC), è anche possibile usare ASP per forzare SSL per pagine specifiche senza apportare modifiche in MMC.

Nota

È consigliabile che tutti gli utenti eseguano l'aggiornamento a Internet Information Services (IIS) versione 7.0 in esecuzione in Windows Server 2008. IIS 7.0 aumenta significativamente la sicurezza dell'infrastruttura Web.

Prerequisiti

Questo articolo presuppone le condizioni seguenti:

  • IIS è in esecuzione su porte standard:

    • HTTP = Porta 80
    • HTTPS = Porta 443
  • IIS ha installato un certificato SSL valido.

  • Il sito Web o il server virtuale utilizzato non usa intestazioni host HTTP/1.1 per la risoluzione dei nomi.

Forzare SSL usando ASP

Per forzare SSL usando ASP, seguire questa procedura:

  1. Fare clic su Start, fare clic su Esegui, digitare Blocco note e quindi fare clic su OK.

  2. Incollare il codice seguente in un documento vuoto del Blocco note. Scegliere Salva con nome dal menu File e quindi salvare il codice seguente nella radice del server Web come file di inclusione denominato ForceSSL.inc:

    <%
    If Request.ServerVariables("SERVER_PORT")=80 Then
        Dim strSecureURL
        strSecureURL = "https://"
        strSecureURL = strSecureURL & Request.ServerVariables("SERVER_NAME")
        strSecureURL = strSecureURL & Request.ServerVariables("URL")
        Response.Redirect strSecureURL
    End If
    %>
    
  3. Per ogni pagina che richiede SSL, incollare il codice seguente nella parte superiore della pagina per fare riferimento al file di inclusione del passaggio precedente:

    <%@Language="VBSCRIPT"%>
    <!--#include virtual="/ForceSSL.inc"-->
    

Quando ogni pagina viene sfogliata, il codice ASP contenuto nel file di inclusione rileva la porta per determinare se viene usato HTTP. Se si usa HTTP, il browser verrà reindirizzato alla stessa pagina tramite HTTPS.

Riferimenti