IIS Règle de Réécriture dans le web.config pour rediriger les requêtes HTTPS vers HTTP
J'ai besoin de rediriger toutes les requêtes https, http, par exemple, si quelqu'un visite https://www.example.com/another-page/ à http://www.example.com/another-page/
J'ai la règle de réécriture suivante dans mon web.config pour l'instant, mais il ne fonctionne pas correctement. C'est la redirection https://www.example.com/another-page/ à https://www.example.com/, donc à la racine du site, mais au lieu de cela, je veux la redirection de rester dans la même URL, et que réécrire https en http.
<rule name="Redirect to HTTP" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{R:1}" pattern="^onepage/(.*)$" negate="true" />
<add input="{HTTPS}" pattern="^ON$" />
</conditions>
<action type="Redirect" url="http://{HTTP_HOST}/{R:0}" redirectType="Permanent" />
</rule>
Toute aide sur la modification de la règle ci-dessus afin qu'il modifie uniquement https, http, mais conserve l'intégralité de l'url visitée serait grandement apprécié!
- Qu'est-ce que l'utilisation de
<add input="{R:1}" pattern="^onepage/(.*)$" negate="true" />
? - Extrêmement liées, bien que cette question n'est techniquement pas un dupe: stackoverflow.com/questions/9823010/...
Vous devez vous connecter pour publier un commentaire.
- Je configurer votre règle, nettoyé un peu, et cela a fonctionné; donc ce n'est pas vraiment répondre avec beaucoup de nouvelles.
Suggestion: Supprimer le
onepage
d'entrée condition juste pour le test, comme cheesmacfly suggérée dans la question en commentaire.Aussi, essayez de changer l'action de
{R:1}
au lieu de{R:0}
. Il ne devrait pas d'importance dans ce cas, mais je voudrais simplement à l'aide de 1, en fonction des capture d'un groupe. R:0 signifie que l'ensemble de la chaîne trouvée, qui toujours me confond un peu.Une possibilité est que votre navigateur a mis en cache une tentative précédente de vos règles. Lorsque le redirectType est Permanente, et vous êtes encore en cours de développement ou de test, le navigateur souvent caches une règle précédente. Effacer le cache de votre navigateur et/ou de supprimer l'Permanents, et/ou de naviguer en mode navigation privée. Lorsque terminé le test, changer permanente. Voir le numéro 2 et 3 de cette réponse: https://stackoverflow.com/a/9204355/292060
Veuillez coller le code ci-dessous dans
web.config
fichier.