【发布时间】:2015-09-22 07:30:32
【问题描述】:
我在 Windows Server 2008 R2 上部署了旧版本的应用程序 (MVC4),一切正常。我最近升级了一些库,它使用 MVC5,所以我尝试部署它,但每次尝试加载页面时,我都会在服务器上收到“404 Resource Not Found”。在本地运行应用程序是可以的,但是服务器上发生的事情就很奇怪了。
发生了某种路由问题,但我无法确定确切的问题。
webconfig如下:
<modules runAllManagedModulesForAllRequests="true" />
<handlers>
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
所有控制器都位于一个单独的类库中,因此使用命名空间:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Login", id = UrlParameter.Optional },
namespaces: new string[] { "Application.DefaultController" } );
关于如何检查问题的任何想法?
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-4 asp.net-mvc-5 asp.net-mvc-routing