IIS7/8 HTTP Error 500.19 错误 0x80070021

本文介绍了解决IIS出现500.19错误的方法,包括配置ASP.NET支持及调整IIS安全设置,以确保web程序能够正常运行。
HTTP 错误 500.19 - Internal Server Error

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


模块

 IIS Web Core
通知BeginRequest
处理程序尚未确定
错误代码0x80070021
配置错误不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的位置标记明确设置的。


解决方案一

如果IIS7.0是在VS安装之后安装的话,那么需要添加IIS7.0对ASP.NET文件的支持,否则会出现aspx文件无法识别的MIME 错误,或者以上问题。

方法:打开和关闭系统功能---》Internet信息服务--》万维网服务---》应用程序开发功能—》勾选asp.net。

解决方案二

IIS7.0的安全设置文件在%windir%\system32\inetsrv \config\applicationHost.config,这里定义服务器全局的安全设置,但是Web程序的web.config可以实现它的某些配置。默认情况下是不容许覆盖的。

所以首先修改applicationHost.config文件,使web程序可以覆盖服务器的全局安全配置,打开handlers和modules的权限,即由Deny改为Allow,如下:

<section name="handlers" overrideModeDefault="Allow" />

<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />


### 解决方案及原因分析 HTTP 错误 500.19 表明存在配置文件读取失败的情况,通常是因为 Web.config 文件存在问题或是必要的 IIS 模块未正确安装。此错误的具体表现形式为“无法访问请求的页面,因为该页的相关配置数据无效”,并附带 HRESULT 值 `0x8007000d`[^1]。 #### 配置文件问题排查 Web.config 是 ASP.NET 应用程序的核心配置文件之一,在其语法不正确或包含不受支持的内容时会引发上述错误。因此建议仔细检查 web.config 中是否存在拼写错误、多余的字符或其他可能导致解析失败的因素[^2]。 #### 缺失模块验证与修复 另一个常见原因是 .NET Core Hosting Bundle 或者特定版本所需的 ASP.NET Core Module V2 并未被正确加载至 IIS 上下文中。这可以通过以下方式确认: - 打开 **IIS管理器** - 寻找左侧站点列表下的 “模块(Module)” 功能项 - 确认其中列出了名为 `[ASPNETCoreModuleV2]` 的条目;如果没有找到,则意味着需要更新或重新安装对应的运行库[^5] 对于缺失的关键组件,可以从官方渠道获取最新版次的 [DotNet Hosting](https://dotnet.microsoft.com/en-us/download/dotnet/) 来完成补全工作。特别是当目标应用基于较新的框架构建(如 .NET 7),则应确保选择了相匹配的发行包进行部署前准备[^4]。 ```powershell # 使用PowerShell命令行工具来检测已安装的.NET SDKs 和 Runtimes Get-ChildItem -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options' | Where-Object {$_.Name -like "*dotnet*"} ``` 通过以上措施往往能够有效缓解乃至彻底消除此类异常现象的发生频率。然而如果经过这些调整仍然遇到相同的问题,可能还需要进一步深入调查其他潜在因素,比如权限设置不当等。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值