Nous remplaçons un ancien site Web ASP classique par une solution .NET 3.5.Routage des requêtes ASP classiques vers .NET - Redirections SEO
Nous devons rediriger toutes les demandes ASP classiques vers des pages aspx (c'est-à-dire contactus.asp, peut maintenant acheminer vers /contact-us/default.aspx). Ce que je conseillerai aime est pour les demandes de frapper global.asax je peux faire quelque chose comme
If url == "bob.asp"
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", SiteConfig.SiteURL + redirectUrl);
End If
Il y a deux solutions inélégant.
A) Placez un fichier global.asa et effectuez le routage par ce biais.
B) Mappez les fichiers ASP sur le moteur .NET. Génial, mais si nous devons héberger des sites ASP classiques sur nos sites, IIS enverra les demandes au mauvais endroit.
J'ai trouvé une bonne solution ici
http://forums.asp.net/p/1202225/3458901.aspx
Ce qui a dit quelque chose comme ça peut fonctionner ...
<buildProviders>
<add extension=".php" type="System.Web.Compilation.PageBuildProvider" />
</buildProviders>
<httpHandlers>
<add verb="*" path="*.php" type="System.Web.UI.PageHandlerFactory" validate="True" />
</httpHandlers>
Cet exemple a été pour php mais je suppose que la même chose fonctionnerait pour aspic. Cependant, après avoir changé .php en .asp dans l'exemple et en plaçant les balises dans la partie correcte du web.config je n'ai pas de joie (une erreur de 500 serveurs en fait).
Quelqu'un peut-il faire la lumière sur ce sujet ou me donner une solution élégante.
J'avais l'impression que la solution ci-dessus ne fonctionnerait pas pour php ou asp car IIS aura acheminé la requête avant qu'elle n'atteigne le moteur .NET.
Merci à l'avance
Steve
quelle version d'IIS utilisez-vous? – ScottE