首页 > 解决方案 > IControllerFactory 'Munq.MVC.MunqControllerFactory' 没有返回名称为 'Home' 的控制器

问题描述

我的客户端有基于 ASP.NET MVC 2 框架的遗留应用程序,它在 WinSrv 2008 R2 VM 上运行良好。我已经克隆了这台机器,更改了 IP、主机名等,并且这台克隆的机器已升级到最新的 WinSrv 2019(首先是 2012 年,然后是 2016 年等)。出于安全原因,我们的目标是将此应用程序迁移到新服务器上。迁移后,我注意到导致在浏览器中显示此信息的错误: 错误信息 事件查看器中有一个条目

Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 2020-05-07 07:53:21 
Event time (UTC): 2020-05-07 05:53:21 
Event ID: 985ed8fb4df44033957afac395d798ea 
Event sequence: 4 
Event occurrence: 1 
Event detail code: 0 

Application information: 
    Application domain: /LM/W3SVC/6/ROOT-1-132333044000403533 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: C:\websites\MY_WEBSITE.COM\www\ 
    Machine name: WINSRV2019 

Process information: 
    Process ID: 15700 
    Process name: w3wp.exe 
    Account name: IIS APPPOOL\MY_WEBSITE.COM 

Exception information: 
    Exception type: InvalidOperationException 
    Exception message: The IControllerFactory 'Munq.MVC.MunqControllerFactory' did not return a controller for the name 'Home'.
   at System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory)
   at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)



Request information: 
    Request URL: https://MY_WEBSITE.COM:443/ 
    Request path: / 
    User host address: MY.IP.ADDRESS 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: IIS APPPOOL\MY_WEBSITE.COM 

Thread information: 
    Thread ID: 8 
    Thread account name: IIS APPPOOL\MY_WEBSITE.COM 
    Is impersonating: False 
    Stack trace:    at System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory)
   at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


Custom event details: 

这种情况经常发生,直到我刷新浏览器然后应用程序正常工作。我无权访问文档。

标签: iissql-server-2012asp.net-mvc-2

解决方案


推荐阅读