案例研究:AspNetInitClrHostFailureModule中的“HTTP错误500.0 - 内部服务器错误”

症状

当用户访问在Windows Server 2008 R2计算机上运行的ASP.NET应用程序时,会收到以下“HTTP错误500.0 - 内部服务器错误”消息。

HTTP错误500.0 - 内部服务器错误

在Web服务器的应用程序事件日志中可以找到详细描述此特定请求失败原因的错误消息。请查看此日志条目,以发现导致此错误发生的原因。

详细的错误信息是:

模块AspNetInitClrHostFailureModule

请求的URL http:// localhost:80 / default.aspx

通知BeginRequest

物理路径C:\ inetpub \ wwwroot \ default.aspx

Handler PageHandlerFactory-Integrated-4.0

登录方法尚未确定

错误代码0x80070002

登录用户尚未确定

您可能会注意到一个罕见的模块AspNetInitClrHostFailureModule出现,并且错误代码是0x80070002这意味着“系统找不到指定的文件”。

在应用程序事件日志中出现相应的错误:

日志名称:应用程序

资料来源:Microsoft-Windows-IIS-W3SVC-WP

事件ID:2299

级别:错误

描述:

一个应用程序报告为不健康。工作进程现在将要求回收。给出的原因:在Web服务器的应用程序事件日志中可以找到详细描述此特定请求失败原因的错误消息。请查看此日志条目,以发现导致此错误发生的原因。

。数据是错误的。

显然上面的信息不能把我们引向原因。

另一个发现是,这台服务器上的所有ASP.NET 2.0应用程序工作正常。这个问题只发生在.NET 4.0上。

故障排除

起初,我尝试着从Process Monitor的错误代码“ 0x80070002 ” 开始排除故障。我也尝试使用失败的请求追踪。

我不能用各种工具找出原因,直到我不得不启动实时调试会话。让我们直接转到根本原因。

根本原因

虽然.NET 4.0已安装在此计算机上,但%windir%\ system32 \ mscoree.dll的版本仍为v2.0。它应该被替换为4.0版本。

它加载.NET 2.0运行时mscorwks.dll,而不是.NET 4.0运行时clr.dll。因此,CLR初始化期间会发生一些意外行为,导致工作进程被回收。

解析度

您可以重新安装.NET 4.0或重新应用Windows 2008 R2 SP1来更新mscoree.dll。

结论

“HTTP错误500.0 -内部服务器错误”从AspNetInitClrHostFailureModule意味着什么的CLR初始化过程中出错。我们需要检查%windir%\ system32 \ mscoree.dll的版本。

总的来说一句话:.net版本不匹配,不能把.net 4.0以上的web网站放到.net 2.0的IIS上,在应用池中应该更改为.net 4.0版本

HTTP Error 500.0 - Internal Server Error错误代码0x80070002的更多相关文章

  1. SquishIt引起的HTTP Error 500.0 - Internal Server Error

    将一个ASP.NET项目从.NET Framework 4.0升级至.NET Framework 4.5之后,访问时出现HTTP Error 500.0 - Internal Server Error ...

  2. HTTP 错误 500.0 - Internal Server Error

    最近在二次开发一个APS.NET网站,将网站部署到IIS后,输入:http://localhost/upload/ 时,报错“HTTP 错误 500.0 - Internal Server Error ...

  3. [转]HTTP Error 500.21 - Internal Server Error Handler "ExtensionlessUrlHandler-Integrated-4.0" has a bad module "ManagedPipelineHandler" in its module list

    1.错误 HTTP Error 500.21 - Internal Server Error Handler "ExtensionlessUrlHandler-Integrated-4.0& ...

  4. [转载]Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决

    今天在测试网站的时候,在浏览器中输入http://localhost/时,发生如下错误: HTTP Error 500.21 - Internal Server Error Handler " ...

  5. Win7 IIS (HTTP Error 500.21 - Internal Server Error)解决

    今天在测试网站的时候,在浏览器中输入http://localhost/时,发生如下错误: HTTP Error 500.21 - Internal Server Error Handler " ...

  6. IIS (HTTP Error 500.21 - Internal Server Error)解决

    今天在测试网站的时候,在浏览器中输入http://localhost/时,发生如下错误: HTTP Error 500.21 - Internal Server Error Handler " ...

  7. Error-MVC:HTTP Error 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效。

    ylbtech-Error-MVC:HTTP Error 500.19 - Internal Server Error  无法访问请求的页面,因为该页的相关配置数据无效. 1.返回顶部 1. IIS ...

  8. 点滴积累【other】---Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决方案(转载)

    此文来自:http://blog626.blog.163.com/blog/static/105610732201051591450870/ 搭建IIS时出现如下错误: HTTP Error 500. ...

  9. 项目部署错误 HTTP Error 500.19 - Internal Server Error

    HTTP Error 500.19 - Internal Server Error配置错误: 不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁定是默认设置的 (overrid ...

随机推荐

  1. [转]MSSQL 判断临时表是否存在

    原文来自:http://www.cnblogs.com/szfhquan/p/4229150.html 方法一: 1 if exists (select * from tempdb.dbo.sysob ...

  2. 1065 A+B and C (64bit) (20 分)

    1065 A+B and C (64bit) (20 分) Given three integers A, B and C in [−2^​63​​,2​^63​​], you are suppose ...

  3. Spark学习笔记3:键值对操作

    键值对RDD通常用来进行聚合计算,Spark为包含键值对类型的RDD提供了一些专有的操作.这些RDD被称为pair RDD.pair RDD提供了并行操作各个键或跨节点重新进行数据分组的操作接口. S ...

  4. JS获取url传参

    function GetRequest() { var url = location.search; //获取url中"?"符后的字串 var theRequest = new O ...

  5. push(),pop(),unshift(),shift()

    1.push() 往数组末尾添加一个或多个元素,返回新的长度 2.pop() 删除数组末尾元素,数组长度减1,返回被删除的值 3.unshift() 往数组开头添加一个或多个元素,返回新的长度 4.s ...

  6. Jquery学习(二)

    滚轮事件与函数节流 jquery.mousewheel插件使用 jquery中没有鼠标滚轮事件,原生js中的鼠标滚轮事件不兼容,可以使用jquery的滚轮事件插件jquery.mousewheel.j ...

  7. Flutter main future mirotask 的执行顺序

    下面这段代码的输出是什么? import 'dart:async'; main() { print('main #1 of 2'); scheduleMicrotask(() => print( ...

  8. uva-10054-欧拉回路

    题意:一个项链上面的每一个珠子有俩种颜色,前面一个珠子后面的颜色和后面珠子的前面颜色一样,有一天它断了, 一个人去搜集,问,搜集到的珠子能不能再次串成项链 原以为是链表,原来链表这组数据过不了. 71 ...

  9. 温故而知新-MySQL高级编程

    1 load data infile语句 MySQL下的命令  登录mysql命令行模式 load data infile "/var/www/1.txt" into table ...

  10. 50. linux下查看tomcat日志

    cd tomcat/logs/ tail -f catalina.out