【发布时间】:2016-03-15 23:24:45
【问题描述】:
当我尝试运行我的网站时出现以下错误。
该网站托管在 Windows 2012 R2 上。
配置错误:此配置部分不能用于此路径。当该部分锁定在父级别时会发生这种情况。默认情况下锁定 (overrideModeDefault="Deny"),或者由具有 overrideMode="Deny" 或旧版 allowOverride="false" 的位置标记显式设置。
错误代码:0x80070021
配置来源:
60: <httpErrors errorMode="Detailed" />
61: <handlers>
62: <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
以下是我尝试过的所有内容:
- 使用 IIS 中的“添加功能和角色”安装 .Net 3.5
-
在 applicationHost 文件中我做了以下代码更改:
将部分处理程序、模块、anonymousAuthentication、basicAuthentication 等 overrideModeDefault 从“拒绝”更改为“允许”。
已在 .Net 3.5 和 4.5 中完成“HTTP 激活”。
以下是我的网络配置文件处理程序代码:
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
<remove name="OPTIONSVerbHandler"/>
<remove name="TRACEVerbHandler"/>
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
</handlers>
在此路径中安装了功能窗口中的所有功能: Internet 信息服务 --> 万维网服务 --> 应用程序开发功能 --> 除了 CGI 之外的所有功能都已启用。
在功能委托 ASP 之前是只读的,我已将其更改为读/写
使用命令提示符解锁处理程序
但我仍然无法摆脱错误。 我的本地实例运行良好。另外,我有一个该网站正在运行的开发服务器,只有在我的生产服务器中才会出现此错误。
请帮助我找出可能导致此问题的原因。
【问题讨论】:
-
您是否尝试过从应用程序的 IIS 控制台界面中删除处理程序并查看 web.config 中发生了什么变化?
-
当我在我的网站的功能视图中双击 IIS 下的处理程序映射时,我得到相同的错误 --> 此配置部分不能在此路径中使用。当该部分锁定在父级别时会发生这种情况。锁定是默认情况下 (overrideModeDefault="Deny"),或者由具有 overrideMode="Deny" 或旧版 allowOverride="false" 的位置标记显式设置。
标签: asp.net .net web-config iis-8 applicationhost