Pourquoi cette règle Web.config pour les fichiers *.asmx ne fonctionne-t-elle pas ?

Nous avons déplacé notre service Web vers un nouveau site Web et nous devons rediriger tous les appels vers https://www.example.com/LicenseServer.asmxmais https://licensing.example.com/LicenseServer.asmxpour une raison inconnue, cela échoue avec une exception.

Ces règles ne conviennent-elles pas aux ASMXfichiers de service Web ?

Dois-je plutôt effectuer cette modification au niveau IIS ?

 <rule name="Licensing redirection" stopProcessing="false">
<match url="LicenseServer.asmx" ignoreCase="true" />
<action type="Redirect" url="https://licensing.example.com/LicenseServer.asmx" redirectType="Permanent" appendQueryString="true" logRewrittenUrl="true" />
</rule>

J'ai déjà vérifié aussi cette réponse: https://stackoverflow.com/a/45939030/261010


Solution du problème

Vous pouvez essayer la règle ci-dessous :

 <system.webServer>
<rewrite>
<rules>
<rule name="testrule" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{REQUEST_URI}" pattern="service1.asmx" />
</conditions>
<action type="Redirect" url="http://localhost:882/test1.asmx" />
</rule>
</rules>
</rewrite>
</system.webServer>

Veuillez définir le fichier et le nom d'hôte en fonction de vos besoins.

voici la sortie:

entrez la description de l'image ici

Commentaires

Posts les plus consultés de ce blog

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Détecter les appuis sur les touches fléchées en JavaScript

Une chaîne vide donne "Des erreurs ont été détectées dans les arguments de la ligne de commande, veuillez vous assurer que tous les arguments sont correctement définis"