Y a-t-il une manière propre à rediriger toutes les tentatives d’aller à une version HTTP:// d’un site à son équivalent HTTPS:// ?
Réponses
Trop de publicités?Je pense que le moyen le plus propre est comme décrit ici sur IIS-Aid.com. C' est web.config uniquement et donc, si vous modifiez le serveur, que vous n’avez pas à retenir toutes les étapes que vous avez traversé avec la page d’erreur personnalisée 403.4 ou autres autorisations spéciales, ça marche.
Un moyen propre à des modifications que le schéma de l'URL de http -> https et laisse tout le reste équivalent. Il convient de serveur-côté de sorte qu'il n'y a pas les problèmes de navigateur.
JPPinto.com a l'Étape Par Étape les instructions sur la façon dont cela est fait, sauf qu'ils utilisent javascript (HttpRedirect.htm) à la place d'une redirection côté serveur. Pour certaines raisons, je ne pouvais pas obtenir IE exécuter le javascript si vous avez " Afficher les messages d'erreur HTTP simplifiés activé, qui est activé par défaut. Autre chose: avec le script, c'est que la redirection de chemin d'accès ne fonctionne pas même en FF ou Chrome. Le script redirige toujours à la racine. (J'ai peut-être raté quelque chose, car il doit rediriger vers de chemin.)
Pour ces raisons, j'ai utilisé une page ASP pour la redirection. L'inconvénient est bien sûr que cela nécessite ASP classique pour être activé sur le serveur.
OpsanBlog a un script ASP et les instructions qui fonctionnent bien avec IIS6.
J'ai eu quelques problèmes à l'aide de cette méthode avec IIS7. Problèmes de l'interface utilisateur pour la plupart, depuis IIS7, il est vraiment facile de rater quelque chose.
- Tout d'abord, vous devez installer l'ASP en tant que rôle de serveur web fonctionnalité.
- Deuxièmement, à l'aide d'un répertoire virtuel n'est pas pas comme prévu dans IIS7 et je n'ai pas essayez de déboguer. Au lieu de cela, j'ai mis le fichier dans le dossier racine du site et utilisé l'url '/SSLRedirect.asp' dans le 403.4 page d'erreur de référence.
- Dernier, la partie la plus délicate, vous ne devez PAS appliquer SSL pour SSLRedirect.asp. Sinon, vous aurez une 403.4 erreur. Pour ce faire, vous choisissez le fichier dans IIS7 'Affichage du Contenu", et passer en mode de Fonctionnalités " de sorte que vous pouvez modifier les paramètres SSL pour le seul fichier et de désactiver 'Exiger SSL case.
IIS manager doit montrer le nom du fichier dans l'en-tête.
Réponse peut être trouvée sur le blog de James Kovac : http://jameskovacs.com/2007/05/09/how-to-autoredirect-to-a-sslsecured-site-in-iis/
Si vous êtes sur IIS 7 et sur R2 ici est un guide qui travaille et le plus « propre »