繁体   English   中英

ASP.NET路由在IIS6中不起作用

[英]ASP.NET routes not working in IIS6

我使用Framework 3.5在VS 2010中的asp.net c#中构建了一个小型Web应用程序。 我需要在具有IIS6的Windows 2003服务器上部署它。

当我通过Visual Studio运行时,它的使用路由(System.Web.Routing)正常工作。 但是现在部署到IIS6服务器后,它会显示404错误。 如果我键入页面的确切路径,则可以正常工作。

http://localhost.local/forms/user/login.aspx一样有效,但是我的自定义路由http://localhost.local/user/login给出了404错误

我已经发现这是在IIS 6.0和IIS 7.0经典模式下 安装通配符应用程序映射运行ASP.NET MVC:解决路由问题的方法

任何线索如何解决这个问题?

在IIS中,.net作为IIS扩展名运行。 这意味着IIS必须能够识别有关该请求的某些信息,以使其知道将请求发送到.Net。 这通常是文件扩展名的形式,即.aspx

因此,由于.aspx扩展名,路径http://localhost/forms/user/login.aspx起作用

除非路径存在并且文件夹中存在default.aspx,否则路径http://localhost/user/login本身不会传递给.NET来执行。

IIS7通过将.net提升为一个完整的部件集成管道来解决此问题。

您可能会使用通配符映射或使用映射到.net的扩展名来使它正常工作-对于IIS 6上的MVC,建议使用此扩展名

我已经发现这个http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/5c5ae5e0-f4f9-44b0-a743-f4c3a5ff68ec.mspx?mfr=truehttp://www.tugberkugurlu.com / archive / running-asp-net-mvc-iis-6-0-和iis-7-0-经典模式---解决路由问题的方法,但仍无法正常工作。

遇到问题了,我没有正确地重新启动IIS6。 我只是重新启动网站。 上面的链接显示了正确的信息如何解决此问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM