案例研究: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. 【转】C# 根据当前时间获取,本周,本月,本季度等时间段 .Net中Exception

    1 DateTime dt = DateTime.Now; //当前时间 2 3 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayO ...

  2. 【EasyUI学习-3】Easyui tabs入门实践

    作者:ssslinppp       1. 摘要 一般我们在设计程序主框架的时候,当点击(子)菜单时,希望相应界面都在tabs页中显示: 在显示的时候,如果之前打开过该界面,则希望重新选中对应的tab ...

  3. JbossMiner 挖矿蠕虫分析 (转载)

    前言 从2013年的诞生,到2016爆发,挖矿(MiningCryptocurrency) 的高回报率,使其成为了一把双刃剑.据外媒去年的统计,比特币的算力(Hash Rate)已在半年内翻了一翻. ...

  4. 2018-2019 20165226 网络对抗 Exp1+ 逆向进阶

    2018-2019 20165226 网络对抗 Exp1+ 逆向进阶 目录 一.实验内容介绍 二.64位shellcode的编写及注入 三.ret2lib及rop的实践 四.问题与思考 一.实验内容介 ...

  5. ASP.NET Web Pages:表单

    ylbtech-.Net-ASP.NET Web Pages:表单 1.返回顶部 1. ASP.NET Web Pages - HTML 表单 表单是 HTML 文档中放置输入控件(文本框.复选框.单 ...

  6. crunch字典生成

    密码破解基本有三种方法:第一种是人工猜解(垃圾桶工程和被动信息收集): 第二种是基于字典暴力破解(主流) 在kali里,是默认自带了字典的,分别放在下面三个文件中:/usr/share/wordlis ...

  7. 第1课 学习 C++ 的意义

    1.  回顾历史 (1)UNIX操作系统诞生之初是直接用汇编语言写成的.随着UNIX的发展,汇编语言的开发效率成为一个瓶劲. (2)1971年,Ken Thompson和Denis Ritchie对B ...

  8. hint之qb_name

    http://www.thinkindata.com/?p=34 该hint用于子查询(query_block)   很多的情况下,如果子查询共用相同的别名(alias), 可以通过设定不同的qb_n ...

  9. php 流程控制switch实例

    switch允许对一个标量(表达式)的多个可能结果做选择. 语法: switch (expr) { case result1: statement1 break; case result2: stat ...

  10. 转载 深入理解java类加载器

    1 基本信息 每个开发人员对java.lang.ClassNotFoundExcetpion这个异常肯定都不陌生,这背后就涉及到了java技术体系中的类加载.Java的类加载机制是技术体系中比较核心的 ...