IIS 7 nécessite SSL redirige automatiquement vers https: //

26

J'ai configuré IIS 7 pour exiger SSL. Je me demande si je peux rediriger automatiquement les demandes non SSL pour qu'elles soient cryptées.

Par exemple, si un utilisateur tape http://domain.com, IIS peut-il rediriger la demande https://domain.complutôt que d'afficher la page d'erreur 403?

jdickson
la source

Réponses:

27

Il existe plusieurs façons de le faire, mais si le module de réécriture d'URL est installé, c'est assez facile et c'est un bon moyen de le faire.

Vous pouvez coller la configuration ci-dessous dans le fichier web.config de votre site (inclus dans la <system.webServer></system.webServer>section)

<configuration>
<system.webServer>
<rewrite>  
  <rules> 
   <rule name="https redirect">      
      <match url="(.*)" ignoreCase="false" />     
         <conditions>        
            <add input="{HTTPS}" pattern="off" ignoreCase="false" />      
         </conditions>      
      <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}{REQUEST_URI}" />    
   </rule>  
  </rules>
</rewrite>
</system.webServer>
</configuration>

OU vous pouvez utiliser l'interface utilisateur d'IIS pour créer une nouvelle règle comme dans la capture d'écran ci-dessous.

Capture d'écran de la règle de réécriture IIS pour rediriger le trafic http vers https.

Scott Obert
la source
Que signifie l'arrêt? cette réponse fonctionne btw
Dez Udezue
1

Vous pouvez également utiliser UrlRewriter.NET . Les règles à utiliser avec cela ressemblent à ceci:

<rewriter>
    <if header="HTTPS" match="^OFF$">
        <redirect url="(.*)" to="https://yourdomain.com$1"/>
    </if>
</rewriter>
Protecteur un
la source