IIS 7 + ASP.NET 4

我有一个ASP.NET应用程序,我试图转换为ASP.NET 4应用程序。 该应用程序相当简单。 我已经在IIS 7.5中创build了一个新的Web应用程序,指向ASP.NET应用程序所在的目录。

当我尝试执行应用程序,但在浏览器中inputhttp:// localhost:[port]时 ,出现以下错误:

错误摘要
HTTP错误500.21 – 内部服务器error handling程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误的模块“ManagedPipelineHandler”

最可能的原因:

  • 使用托pipe处理程序; 但是,ASP.NET未安装或未完全安装。
  • 处理程序模块列表的configuration中存在印刷错误。

我尝试使用VS2010发布SL应用程序时遇到了同样的问题,但是.NET 3.5SP1和VS2008之前没有任何问题。

所以试试运行这个( %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i )在这里描述forums.iis.net/t/1149449.aspx和这里www.gotknowhow.com/articles/fix -bad-module-managedpipelinehandler-in-iis7 ,它现在可以工作。 所以问题是ASp> NET 4.0没有正确安装,huuu … 🙂

“aspnet_regiis.exe -i”技巧为我工作。

我最终不得不重新安装.NET 4框架。

在IISpipe理器的“站点”下,find您的目录(网页)并转换为应用程序。 select一个有效的应用程序池(或创build一个新的),它使用.NET v.2或更高版本。 重新启动IIS。 你完成了。

2件事检查:

1)您是否在机器上安装了.NET 4.0位?

2)有问题的网站是否设置为使用ASP.NET 4.0?

这工作对我来说http://blogs.msdn.com/b/amol/archive/2009/03/31/aspx-pages-not-getting-served-on-iis-7.aspx

解决scheme:在applicationHost.config中添加全局模块部分

<add name =“ManagedEngine”image =“%windir%\ Microsoft.NET \ Framework \ v2.0.50727 \ webengine.dll”preCondition =“integratedMode,runtimeVersionv2.0,bitness32”/>

为64位
<add name =“ManagedEngine64”image =“%windir%\ Microsoft.NET \ Framework64 \ v2.0.50727 \ webengine.dll”preCondition =“integratedMode,runtimeVersionv2.0,bitness64”/>