Jor*_*dan 7 asp.net-mvc web-deployment
我有一个使用.NET 4.5的ASP.NET MVC 4项目,我试图使用Visual Studio 2012发布到IIS 7.0.当我在IIS Express中调试应用程序时,一切都运行得非常好.当我将它发布到服务器时,MVC请求返回404.我在网站上有一些aspx页面,它们都工作正常.以下是我的路由方案.它是样板代码:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
谢谢.
编辑:
我知道了!我必须system.webServer在我的内容中添加以下内容web.config:
<modules runAllManagedModulesForAllRequests="true"/>
Run Code Online (Sandbox Code Playgroud)
谁能告诉我为什么会这样?
此参考可能会有所帮助:
https://www.iis.net/configreference/system.webserver/modules
“以前必须将 runAllManagedModulesForAllRequests 设置为 true 才能支持路由。但是,使用 Service Pack 更新 IIS 7 后,在使用 ASP.NET 路由时,可以将 runAllManagedModulesForAllRequests 的值设置为 false 或省略。”
(显然安装IIS或Windows服务包需要首先仔细考虑)
| 归档时间: |
|
| 查看次数: |
6774 次 |
| 最近记录: |