Mon équipe effectue une mise à niveau d'ASP.NET 3.5 vers ASP.NET 4.0. Nous utilisons actuellement Helicon ISAPI Rewrite pour mapper http://localhost/<account-name>/default.aspx
à http://localhost/<virtual-directory>/default.aspx?AccountName=<account-name>
où <account-name>
est une variable de chaîne de requête et <virtual-directory>
est un répertoire virtuel (naturellement).Maintien du chemin de réécriture ISAPI avec le tilde ASP.NET (~)
Avant la mise à niveau du tilde (~) a décidé de http://localhost/<account-name>/...
(que je veux faire) et après la mise à niveau des résolutions tilde à http://localhost/<virtual-directory>/...
qui se traduit par une erreur, car la chaîne de requête <account-name>
est nécessaire. Je souhaite éviter de devoir tout remplacer par des chemins relatifs, car plusieurs fonctions de notre système utilisent l'intégralité de l'URL au lieu du chemin relatif.
Pour ce que ça vaut, j'utilise IIS7 dans Windows 7, Visual Studio 2010 avec ASP.NET 4.0 et le 64 bits Helicon ISAPI Rewrite. Si je reviens à la version ASP.NET 3.5 alors cela fonctionne toujours bien (ce qui me laisse penser que rien n'a changé dans IIS à moins que ce soit dans le pool d'applications 4.0 - quand je change entre 3.5 et 4.0 je dois changer le pool d'applications dans IIS).
Des idées? Merci d'avance!
Merci pour le lien! Malheureusement, il y a encore des développeurs dans notre équipe ainsi que des serveurs qui utilisent encore IIS6, donc jusqu'à la mise à niveau, nous devrons probablement nous en tenir à Helicon ISAPI. – Adam
hmm ok .. édité ma réponse pour inclure le moyen du module HTTP –
Merci! J'espère rester avec Helicon juste pour ne pas avoir à migrer et tester toutes les réécritures. Mais s'il en est ainsi, il est bon de savoir que je peux utiliser la redirection du module HTTP. Je suis également curieux de savoir quel est le problème sous-jacent. Peut-être que .NET 4.0 ne fonctionne pas bien avec Helicon ... si tel est le cas, HTTP Module Redirect sonne comme le chemin à parcourir. – Adam