我正在尝试创建一个遗留路由,将旧的asp链接重定向到新的URL。
我的路线如下,它是列表中的第一条路线:
routes.MapRoute(
"", // Route name
"{*path}", // URL with parameters
new { controller = "Legacey", action = "Legacey" },
new { path = @".*\.asp.*" });// Parameter defaults
我遇到的问题是IIS在它们到达我的路线之前拦截这些和404s。 我想web.config中有一个设置告诉IIS停止这样做但我找不到它。
答案 0 :(得分:2)
您可以通过网址重写来完成此操作,如this post
中所述只需将这样的内容添加到您的web.Config中(将Legacey / Legacey替换为asp页面的重定向URL):
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect ASP Files to new URL" stopProcessing="true">
<match url="*\.asp" />
<action type="Redirect" url="Legacey/Legacey" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
我没有对此进行测试,这正是我从该帖子中所理解的。