Asp.net mvc 2 iis7.5 mvc2 404和500.24错误

Asp.net mvc 2 iis7.5 mvc2 404和500.24错误,asp.net-mvc-2,iis-7.5,http-status-code-404,Asp.net Mvc 2,Iis 7.5,Http Status Code 404,这是我第一次在IIS7.5上部署MVC2应用程序(.NET4)。我使用的是StructureMap和Fluent NHibernate,使用集成安全性在本地运行良好。应用程序确实呈现第一个页面(controllername/pagename),但在下一个页面(controllername/pagename/id)上抛出错误 我已经运行了%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet\u regiis.exe-ir。 HttpRedirec

这是我第一次在IIS7.5上部署MVC2应用程序(.NET4)。我使用的是StructureMap和Fluent NHibernate,使用集成安全性在本地运行良好。应用程序确实呈现第一个页面(
controllername/pagename
),但在下一个页面(
controllername/pagename/id
)上抛出错误

我已经运行了
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet\u regiis.exe-ir
。 HttpRedirection和HttpExceptions已启用

这是来自查看源的404错误:

[HttpException]:路径“/conrollername/pagename/1”的控制器未找到或未实现IController。
在System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext-RequestContext,类型controllerType)上
在C:\Apps\Development Source\CustomerResponseApplication\trunk\CustomerResponses\Infrastructure\StructureMapControllerFactory.GetControllerInstance(RequestContext RequestContext,Type controllerType)中的CustomerResponses.Infrastructure.StructureMapControllerFactory.cs:第19行
位于System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext RequestContext,String controllerName)
在System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext、IController和controller、IControllerFactory和factory)中
在System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext,AsyncCallback回调,对象状态)
位于System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
在System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤,布尔值&同步完成)

另一个链接给我500.24错误:

HTTP错误500.24-内部服务器错误
检测到ASP.NET设置不适用于集成托管管道模式

有人有什么想法吗? 谢谢

Web.Config上的部分

system.webServer-部分

其中一个问题是: 您的web.config文件包含太多信息。 IIS 7.5在集成模式下运行时不需要任何其他设置。 我建议创建一个空白的mvc应用程序并将其发布到Web服务器上。 我也看到了 错误:

[HttpException]:未找到路径“/conrollername/pagename/1”的控制器或该控制器未实现IController。位于System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext RequestContext,类型controllerType)

其中指出system.web或system.web.mvc中的dll未从project中引用

我的解决方案(可能不是最好的)是:在发生错误的项目上单击右键并将DLL复制到本地,这将有助于解决错误

至于错误: 另一个链接给出了500.24错误:HTTP错误500.24-内部服务器错误检测到ASP.NET设置不适用于集成托管管道模式

最好是安装iis控制台并使用iis控制台打开项目。

问题之一是: 您的web.config文件包含太多信息。 IIS 7.5在集成模式下运行时不需要任何其他设置。 我建议创建一个空白的mvc应用程序并将其发布到Web服务器上。 我也看到了 错误:

[HttpException]:未找到路径“/conrollername/pagename/1”的控制器或该控制器未实现IController。位于System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext RequestContext,类型controllerType)

其中指出system.web或system.web.mvc中的dll未从project中引用

我的解决方案(可能不是最好的)是:在发生错误的项目上单击右键并将DLL复制到本地,这将有助于解决错误

至于错误: 另一个链接给出了500.24错误:HTTP错误500.24-内部服务器错误检测到ASP.NET设置不适用于集成托管管道模式


最好是安装iis控制台并使用iis控制台打开项目。

将应用程序池属性更改为:

.NET Framework Version
-- .NET Framework *version*

Pipeline Mode
-- Classic

将应用程序池属性更改为:

.NET Framework Version
-- .NET Framework *version*

Pipeline Mode
-- Classic
.NET Framework Version
-- .NET Framework *version*

Pipeline Mode
-- Classic