/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

解决IIS出现HTTP错误500.19:工作进程无法读取 applicationhost.config 或 web.config 文件

2016-06-17 十有三 0 浏览:3万+ 网站建设运维 异常处理 | 服务器

本文记录一次HTTP错误500.19,详细错误代码为0x8007007e的排查经历和解决方法。如果你也遇到HTTP 500.19错误,最好的解决方法就是根据页面上的错误提示进行排查,建议点击错误详细信息,进入官网帮助中心查看对应的解决方法。

首先看下本人遇到的错误页面提示:

HTTP 错误 500.19 - Internal Server Error

无法访问请求的页面,因为该页的相关配置数据无效。

最可能的原因:

  • 工作进程无法读取 applicationhost.config 或 web.config 文件。
  • applicationhost.config 或 web.config 文件中存在格式错误的 XML。
  • 由于 NTFS 权限不正确,服务器无法访问 applicationhost.config 或 web.config 文件。

可尝试的操作:

  • 查询事件日志中有关配置文件不可读的原因的信息。
  • 确保为应用程序池指定的用户标识或通过身份验证的用户具有访问 web.config 文件的必需权限。

详细错误信息:

      模块   DynamicCompressionModule

      通知   SendResponse

处理程序   ExtensionlessUrlHandler-Integrated-4.0

错误代码   0x8007007e

请求的 URL   https://shiyousan.com:80/

物理路径   X:\xxx\xxxx\十有三博客

登录方法   尚未确定

登录用户   尚未确定

详细信息:

当读取 Web 服务器或 Web 应用程序的配置文件出现问题时,就会发生此错误。在某些情况下,事件日志会包含有关导致此错误的原因的更多信息。

查看详细信息 »

这里强烈建议点击详细信息查看更多错误提示,我遇到的错误代码是0x8007007e,进入详细页面后搜索下相关代码,可以获取更多有帮助的内容:

0x8007007e错误详细信息和解决方法

详细的错误原因:
因为 ApplicationHost.config 文件或 Web.config 文件引用无效或不存在的模块或 DLL,将发生此问题。 
解决方法:
在 ApplicationHost.config 文件中或在 Web.config 文件中,找到模块引用或无效的 DLL 引用,然后修复引用。若要确定哪些模块引用不正确,请启用失败请求跟踪,并重现该问题。

首先,我根据页面的提示信息并结合自己的情况来分析,直观判断出是IIS的配置文件applicationhost.config有问题,当时IIS下所有网站打开都是HTTP 错误500.19,因此排除是单个网站的web.config文件出问题。

PS:另外如果有手动修改过IIS配置文件或者网站配置,并且造成XML格式不正确也会出现此错误。

然后说下我最后是如何解决这个问题的,我的情况很简单,删除掉出现问题的网站和应用程序池,因为正是这个网站引用了某个无效的模块,而无效的模块的配置是放在applicationhost.config中的,所以一颗老鼠屎坏了一锅粥,导致所有网站都无法打开:

删除IIS上有问题的网站

删除有问题的应用程序池

具体来说,当时我在服务器上测试安装WSUS(Windows Server 更新服务),WSUS会自动在IIS上创建一个Wsus的网站,后面我卸载掉了WSUS,但是貌似没卸载干净,在IIS上残留了之前自动创建的网站,导致这个网站无法正确引用WSUS相关模块和功能,影响了IIS下所有其他网站都出现500.19/0x8007007e错误。有类似情况的朋友可以参考下文章所说的情况,基本上错误提示都把问题原因说的很清楚了。

至于如何判断是哪个网站配置出问题,这里先出一个昏招,删除掉IIS上所有网站,然后一个个重新建,这样很容易排查出是哪个网站影响了IIS,另外记得先备份相关设置!

昏招如果不能随便用,这里就要使用官方建议的方法,就是使用IIS的失败请求跟踪模块进行错误跟踪,具体如何使用请参阅官方文档

使用失败请求跟踪规则排查

另外如果有相关经验的开发人员,也可以直接检查IIS的配置文件和网站对应的配置文件。


作者:十有三

出处:https://shiyousan.com/post/636017199703934389

版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。


  • 上一篇: 一次头疼的IIS故障经历:IIS 8.5的URL重写模块无法正常运行
  • 下一篇: IIS 8.5的配置文件存放路径

相关文章
  • IIS ARR设置错误引发HTTP 400.605 The request cannot be routed
  • 解决IIS出现HTTP错误500.19:工作进程无法读取 applicationhost.config 或 web.config 文件
  • 收到Let's Encrypt邮件通知需将SSL证书升级到ACMEv2协议
  • 思考ASP.NET网站静态化的利与弊
  • IIS 8.5的配置文件存放路径
  • 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件
  • VS重构重命名的快捷键

推荐文章

  • limarquee轮番插件图片略微抖动的问题
  • 解决Windows Server 2012 R2 百度网盘无法打开提示丢失Wlanapi.dll
  • ASP.NET HTTP 状态字符串无效
  • MongoDB在Windows Server 2012 R2中的安全部署
  • 解决GIMP无法填充的问题-图案变黑灰色以及低透明无效果

友情链接

  • Passingwind的博客
  • 码友网

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号
闽公网安备 35020302035102号