我有一个简单的webAPI构建Visual Studio 2013。当我从VS13运行它时,它工作得很好,但当我在本地IIS中复制项目时,它给了我以下错误。

HTTP错误500.19 -内部服务器错误不能被请求的页面 访问,因为该页的相关配置数据为 无效的。

详细错误信息:

模块IIS Web核心

通知BeginRequest

处理人尚未确定

错误码0x80070021

配置错误该配置项不能在该路径下使用。当section被锁定在父级时,就会发生这种情况。锁定是默认的(overrideModeDefault="Deny"),或者由overrideMode="Deny"或遗留的allowOverride="false"的位置标记显式设置。

配置文件\?\C:\inetpub\wwwroot\APITeslin\web.config

配置来源:

36:   <system.webServer>  
37:     <handlers>  
38:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />

当前回答

当我试图在一个空ASP中托管一个WCF服务时,我得到了这个错误。网络应用程序。整个解决方案使用。net 4.5平台,IIS 8.5运行在Windows 8.1上。 你的问题是

打开“打开或关闭Windows功能” 进入ASP下的WCF部分。NET 4.5高级服务 检查HTTP激活。 系统会要求您重新启动系统。

这应该修复HTTP 500.19!

刚刚在Windows 10 Pro, iis10上出现了一个问题,这次,它是HTTP 404.0。修复仍然相同,在Windows功能-> .NET Framework 4.6高级服务-> WCF服务-> HTTP激活下打开“HTTP激活”

其他回答

尝试在服务器级别解锁相关的IIS(7.5)配置设置,如下所示:

打开IIS管理器 在Connections窗格中选择服务器 在主窗格中打开Configuration Editor 在Sections下拉菜单中,选择要解锁的section,例如system。webServer > defaultPath 在右侧窗格中单击“解锁属性” 重复其他需要解锁的设置 重新启动IIS(可选)-在“连接”窗格中选择服务器,在“操作”窗格中单击“重新启动”

得到了完全相同的错误,然后得到了这个问题。正如@SpaceBison在评论中提到的,这个答案描述了解决方案- https://stackoverflow.com/a/12867753/404099。我发现得太晚了,它漏了几步。这对我来说很管用:

Windows Server 2012, IIS 8.5。应该也适用于其他版本。

Go to server manager, click add roles and features In the roles section choose: Web Server Under Security sub-section choose everything (I excluded digest, IP restrictions and URL authorization as we don't use them) Under Application Development choose .NET Extensibility 4.5, ASP.NET 4.5 and both ISAPI entries In the features section choose: NET 3.5, .NET 4.5, ASP.NET 4.5 In the web server section choose: Web Server (all), Management Tools (IIS Management Console and Management Service), Windows Authentication - if you are using any of it

今天在Windows 2016核心服务器上,我通过确保GIOESCOM提到的组件安装来解决这个问题,然后我修复了我的情况下的SDK,用于. net Core 3.1, . net 5和. net 6,解决了这个问题。NET 4.7.2 MVC web应用程序工作。

这很有效,还节省了我的时间。HTTP错误500.19 -内部服务器错误0x80070021 (IIS 8.5)

如果您是第一次在那台计算机上运行IIS,您应该尝试运行ASP。NET IIS注册工具(aspnet_regiis.exe)。

下面是如何做到这一点: 如果你使用的是.net framework v4,以管理员身份打开命令提示符,使用以下命令将目录更改为.net framework基本文件夹:

CD C:\Windows\Microsoft.NET\Framework\v4.0.30319

或者,如果你使用的是64位计算机,使用:

CD C:\Windows\Microsoft.NET\Framework64\v4.0.30319

当您成功导航到适当的目录时,执行ASP。NET IIS注册工具使用:

aspnet_regiis -i

如果您使用的是不同的. net框架版本,只需将v4.0.30319替换为适当的文件夹名。

希望这能有所帮助。