我正在开发一个定义了一些自定义路由的MVC 3。所有路线在本地工作都很好(使用IIS Express和Cassini),但当我将网站推送到我的生产服务器时,其中一条路线炸弹有404.
本地设置: Windows 7的 VS 2010 SP1 IIS Express
生产设置: Windows Server 2008 Datacenter IIS 7.5
轰炸的路线:
routes.MapRoute(
"ShortLinks",
"E-{id}",
new { Controller = "Public", Action = "ResolveShortLink" },
new[] { "namespace.WebUI.Controllers" }
);
routes.MapRoute(
"SmsShortLinks",
"T-{id}",
new { Controller = "Public", Action = "ResolveShortLink" },
new[] { "namespace.WebUI.Controllers" }
);
示例请求如下所示。
http://domain/E-7d9cbaa2-25b0-47be-8b2c-31844a3de482 HTTP://域/ T-7d9cbaa2-25b0-47be-8b2c-31844a3de482
再次,当我在本地运行时,路由工作完美,但当我将其推送到生产服务器时,它不起作用。
答案 0 :(得分:2)
您有没看过它实际上要走的路线?我建议读一读 http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx 要么 使用Glimpse来查看实际解决的路线,它可能有助于解决问题...... http://getglimpse.com/