什么是web.config锁定以及如何以及为什么完成锁定?这将是一篇很长的文章,因为我将逐步引导您完成导致这个问题的过程。
我有一个要调试和探索的网站。它已经被使用。在我的开发小组中的同龄人的计算机上,它已经处于可行状态。我只想单步调试代码。为此,根据与我一起工作的同僚的说法,我需要在本地启动网站,然后将在Visual Studio中加载的项目攻击到正在运行的项目。
这使我陷入了绊倒的错误。当我打开IIS并单击列出并经过验证的网站的“浏览* .80(http)”选项时,它会在浏览器中启动网站,但出现错误:
HTTP错误500.19-内部服务器错误
无法访问请求的页面,因为该页面的相关配置数据无效。
详细的错误信息:
模块 IIS Web核心
通知 BeginRequest
处理程序 尚未确定
错误代码 0x80070021
配置错误 此配置部分不能在此路径上使用。当节锁定在父级时,会发生这种情况。锁定默认情况下是(overrideModeDefault =“ Deny”),或者是由一个带有overlayMode =“ Deny”或旧版allowOverride =“ false”的位置标记显式设置的。
配置文件
\?\ C:\ Users .... \ web.config
我当然已经修改了web.config的路径以保持匿名。
页面上的“配置源:”带有带有XML节点的红色突出显示行,但这似乎不是有用的信息。
页面底部的“更多信息”区域显示:
更多信息:
当读取Web服务器或Web应用程序的配置文件时出现问题时,将发生此错误。在某些情况下,事件日志可能包含有关导致此错误的原因的更多信息。
查看更多信息»
由于HResult代码为0x80070021,此超链接页面https://support.microsoft.com/en-us/help/942055/http-error-500-19-error-when-you-open-an-iis-7-0-webpage上列出的相应错误消息为:
应用程序“应用程序名称”中的服务器错误
HTTP错误500.19 –内部服务器错误
结果:0x80070021
HRESULT的描述 无法访问请求的页面,因为该页面的相关配置数据无效。
原因是:当IIS配置文件的指定部分锁定在较高的配置级别时,可能会发生此问题。
解决方法是:要解决此问题,请解锁指定的部分,或者不要在该级别上使用它。有关配置锁定的详细信息,请参阅如何在IIS 7.0配置中使用锁定。
这链接到此页面https://docs.microsoft.com/en-us/iis/get-started/planning-for-security/how-to-use-locking-in-iis-configuration,该页面描述了锁定配置文件中不同元素的情况。
显然,根据此在线文档,我可以按照所述步骤解决此问题。
该页面提到applicationHost.config,但是错误页面上我引用了web.config,但我认为如果我更改了
可能会起作用
但是,intellisense表示“ overrideMode”不是允许的属性。