Nous voulons que TOUS les sites de notre serveur Web (IIS 10) appliquent SSL (c.-à-d. Redirigent HTTP vers HTTPS).
Nous demandons actuellement SSL sur chaque site et mettons en place un 403 error
gestionnaire pour effectuer une 302 redirect
à l'adresse https pour ce site spécifique.
Cela fonctionne très bien. Mais c'est difficile à faire pour chaque site, il y a beaucoup de place pour l'erreur humaine.
Idéalement, je voudrais mettre en place un permanent 301 redirect
sur tous HTTP://*
pourHTTPS://*
Existe-t-il un moyen simple de le faire dans IIS?
Réponses:
Le module 2.1 de réécriture d'URL IIS pour IIS7 + peut être votre ami. Le module peut être téléchargé depuis IIS URL Rewrite . L'utilisation du module de réécriture d'URL et de la référence de configuration du module de réécriture d'URL 2.0 explique comment utiliser le module.
Une fois le module installé, vous pouvez créer une redirection à l'échelle de l'hôte à l'aide du Gestionnaire IIS. Sélectionnez Réécriture d'URL , Ajouter des règles ... et Règle vierge .
Nom:
rediriger vers HTTPS
Correspondance URL URL
demandée:
Matches the Pattern
Utilisation:
Wildcards
Modèle:
*
Ignorer la casse: Coché
Conditions
Regroupement logique:
Match Any
Entrée de condition :
{HTTPS}
Vérifier si la chaîne d'entrée:
Matches the Pattern
Modèle:
OFF
Ignorer la casse: Cochée
Suivre les groupes de capture dans toutes les conditions: Non cochée
Variables serveur
Laisser vide.
Action
Type d'action:
Redirect
URL de redirection:
https://{HTTP_HOST}{REQUEST_URI}
Ajouter une chaîne de requête: non cochée
Type de redirection:
Permanent (301)
Appliquez la règle et exécutez IISReset (ou cliquez sur Redémarrer dans le gestionnaire IIS)
Alternativement, après avoir installé le module, vous pouvez modifier le fichier applicationHost.config comme suit:
la source
Ma recherche montre que cela pourrait être un meilleur moyen de rediriger:
la source