* HTTP错误500.21 - 内部服务器ErrorHandler“handlers / exchange.axd_ *”

时间:2013-11-28 14:42:05

标签: asp.net iis

我们将Windows服务器从Framework v2升级到v4,从iis 6升级到iis 8.5。有些网站仍然使用相同的框架v2,但其中一个会出现这种错误:

HTTP错误500.21 - 内部服务器ErrorHandler“handlers / exchange.axd _ ” 在其模块列表*

中有一个错误的模块“ManagedPipelineHandler”

这在旧服务器上运行。现在我们有Windows 2012 R2

web.config中的

如果我运行此%windir%\ Microsoft.NET \ Framework \ v4.0.21006 \ aspnet_regiis.exe -i我害怕更改其他网站的框架。

有没有办法在Web.config或IIS中指定框架?怎么能解决这个500错误?任何想法?


我们将此站点的框架从.NET CLR V.2.05.xxxxx Classic更改为集成在IIS上的.Net CLR v4.0.21006。

我认为preCondition = IntegratedMode也有效,我没有测试过。

由于

2 个答案:

答案 0 :(得分:1)

我的问题是我得到了错误

  

HTTP错误500.21-内部服务器错误
  处理程序“ ExtensionlessUrlHandler-Integrated-4.0”的模块列表中有错误的模块“ ManagedPipelineHandler”

我的解决方法是

  1. 以管理员结束类型运行cmd

    dism /online /enable-feature /featurename:IIS-ASPNET45 /all
    
  2. 重新启动IIS

此解决方案来自this SO question

答案 1 :(得分:0)

您必须将web.config中的处理程序属性更改为

preCondition="integratedMode"

通过解释来浏览MSDN的链接 http://blogs.msdn.com/b/tmarq/archive/2007/08/30/iis-7-0-asp-net-pipelines-modules-handlers-and-preconditions.aspx