为了对比新版本的BlogEngine.NET,特意通过WEB平台下载和安装3.2旧版本,结果无法运行,出现HTTP 500.19错误,错误代码为0x80070032。其实以前接触BlogEngine.NET时候也常常遇到这个问题,就是应用程序池的.NET Framework版本没有选择正确!
仔细查看官方的文档,就会发现文档中就有详细的说明,我所使用的BlogEngine.NET是基于ASP.NET 4.5的,所以.NET Framework版本不能选择V4.0以下的。另外官方还建议将应用程序池的托管管道模式设置为集成模式,官方文档截图:

stackoverflow上也有类似的问题,可以参考下:HTTP Error 500.19 – Internal Server Error in BlogEngine.NET
具体解决步骤如下,打开IIS管理器中的应用程序池节点,选择当前BlogEngine.NET网站使用的程序池,查看.NET版本:

如果发现版本不符合要求,例如使用的是V2.0版本,双击对应的程序池打开编辑界面,设置下V4.0以上的版本即可:

如果无法直接操作IIS,使用的是虚拟主机,请在虚拟主机提供的控制面板进行操作,或者联系主机商帮忙修改下。
最后贴下详细的错误信息:
错误摘要
HTTP 错误 500.19 – Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效。
详细错误信息
- 模块 IIS Web Core
- 通知 未知
- 处理程序 尚未确定
- 错误代码 0x80070032
- 配置错误 无法读取配置节“system.web.extensions”,因为它缺少节声明
- 配置文件 //?/E:/BlogEngine.NET 3.3 (web)/web.config
- 请求的 URL http://localhost:80/
- 物理路径
- 登录方法 尚未确定
- 登录用户 尚未确定
配置源
- 45: </system.serviceModel>
- 46: <system.web.extensions>
- 47: <scripting>
错误截图:

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/98903.html