【问题标题】:ASP.NET MVC 5 Getting Resource Not Found ErrorASP.NET MVC 5 获取资源未找到错误
【发布时间】: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


    【解决方案1】:

    虽然 Magnus 的回答并没有解决我的问题,但它为我指明了 Nuget 的方向。

    我将 asp.net.mvc 库更新为 4.0.0.1,然后右键单击 Web 应用程序项目并转到管理 Nuget 包。

    在那里我去了更新选项,然后点击“全部更新”

    这更新了所有库,然后一切终于在服务器上运行了!

    您认为即使在本地端也应该首先应用此更新方法,但由于某种原因,该应用程序仍然在本地工作,而无需更新这些引用/库。

    【讨论】:

    • 我仍然认为我回答了您的问题:“关于如何检查问题的任何想法?即它试图在服务器上路由到什么?”
    • 好吧,一瞥没有用。当您设置它,然后尝试加载应用程序时,没有任何反应。由于应用程序甚至没有加载,glimpse 也没有加载,所以这不是路由问题。
    猜你喜欢
    • 2014-11-29
    • 2012-03-06
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 2018-08-23
    • 1970-01-01
    • 2022-07-28
    • 1970-01-01
    相关资源
    最近更新 更多