Comparer les certificats SSL

Rediriger tout le trafic de HTTP vers HTTPS dans IIS7 permettra de s’assurer que vos utilisateurs accèdent toujours au site en toute sécurité. Il existe de nombreuses façons de configurer une redirection IIS7 de HTTP vers HTTPS et certaines sont meilleures que d’autres. La redirection idéale de HTTP à HTTPS ferait ce qui suit :

  • Diriger doucement les utilisateurs vers HTTPS afin qu’ils n’aient pas à taper « https » dans l’URL
  • Rediriger les utilisateurs vers la page spécifique qu’ils allaient consulter sur HTTP (page.htm)
  • Sauvegarder toute variable passée dans la chaîne de requête ( ?page=2)
  • Fonctionne dans tous les navigateurs
  • Transférer le PageRank à la page redirigée en utilisant une redirection 301, maintenant le SEO
  • Autoriser des parties spécifiques d’un site à forcer SSL mais autoriser HTTP sur d’autres parties du site
  • Rediriger les utilisateurs de mondomaine.com vers www.mydomain.com

Malheureusement, il n’y a pas un moyen facile de satisfaire toutes ces exigences, et la plupart des méthodes ne satisfont que quelques-unes d’entre elles. La meilleure méthode pour faire une redirection HTTP vers HTTPS que j’ai vue implique l’utilisation d’ASP.Net pour faire la redirection HTTP vers HTTPS.

Mais la plupart des gens n’ont pas besoin de toutes ces fonctionnalités, donc j’ai listé deux des meilleures méthodes de redirection HTTP vers HTTPS dans IIS 7. Elles sont faciles à mettre en place et efficaces dans la plupart des situations. Notez que ces méthodes devraient également fonctionner dans IIS 8 et IIS 10 avec quelques petites modifications.

Méthode 1 – Utilisation du module de réécriture d’URL de Microsoft

Pour cette méthode de redirection de HTTP vers HTTPS, vous devrez effectuer les opérations suivantes ;

  1. Installer le module de réécriture d’URL de Microsoft
  2. Installer votre certificat SSL dans IIS 7 et le lier à votre site web
  3. S’assurer que l’option Requérir SSL n’est PAS cochée sous Paramètres SSL de votre site web (décochez les cases qui sont cochées dans cette capture d’écran)

  4. Copiez et collez le code suivant entre les balises <rules> et </rules> dans votre fichier web.config dans le répertoire racine de votre site web.

    <rule name="HTTP to HTTPS redirect" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
    <add input="{HTTPS}" pattern="off" ignoreCase="true" />
    </conditions>
    <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
    </rule>

  5. Tester le site en allant sur http://www.yoursite.com et en s’assurant qu’il redirige

Méthode 2 – Mise en place d’une page d’erreur personnalisée

La deuxième méthode de mise en place d’une redirection IIS7 HTTP vers HTTPS consiste à Requérir SSL sur le site ou une partie du site et à mettre en place une page d’erreur 403.4 personnalisée. Pour ce faire, il suffit de suivre les étapes suivantes :

  1. Installer votre certificat SSL dans IIS 7 et le lier à votre site web
  2. Dans IIS, cliquez sur le nom du site, et allez dans la section Paramètres SSL

  3. Cochez Exiger SSL et Exiger SSL 128 bits et cliquez sur Appliquer

  4. Après avoir fait cela, les utilisateurs recevront normalement cette erreur :

  5. Créer un nouveau fichier texte et y coller ce qui suit:

    <html>
    <head><title>Redirecting...</title></head>
    <script language="JavaScript">
    function redirectHttpToHttps()
    {
    var httpURL= window.location.hostname + window.location.pathname + window.location.search;
    var httpsURL= "https://" + httpURL;
    window.location = httpsURL;
    }
    redirectHttpToHttps();
    </script>
    <body>
    </body>
    </html>

  6. Enregistrer le fichier comme redirectToHttps.htm dans votre répertoire C:\Inetpub
  7. De retour dans IIS, cliquez sur le nom du site et double-cliquez sur l’option Error Pages

  8. Cliquez sur Add… et entrez 403.4 comme code de statut. Recherchez le fichier redirectToHttps.htm que vous venez de créer et cliquez sur OK

  9. Sélectionnez le code d’erreur et appuyez sur Modifier les paramètres de la fonction…

  10. Cliquez sur l’option Pages d’erreur personnalisées et recherchez à nouveau le fichier redirectToHttps.htm

  11. Tester le site en allant à http://www.yoursite.com et en s’assurant qu’il redirige

Un avertissement de l’utilisation d’une page d’erreur personnalisée pour faire une redirection IIS7 de HTTP à HTTPS est que le navigateur web doit avoir JavaScript activé pour que la redirection fonctionne.

Autres méthodes de redirection IIS7 de HTTP vers HTTPS:

  • Redirection de Http vers Https en ASP.NET
  • Support Microsoft – Comment rediriger une connexion HTTP vers HTTPS pour les clients Outlook Web Access et comment rediriger le site Web par défaut pour pointer vers le répertoire virtuel Exchange
  • IIS 6 Redirect HTTP to HTTPS
  • Switching Between HTTP and HTTPS Like A Bigshot Hotshot

Originally posted on Sat Feb 27, 2010

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.