我在将站点部署到服务器时遇到错误。尝试加载主页或在IIS中的新站点上访问身份验证时,我收到错误:

配置错误:无法在此路径上使用此配置节。当节在父级锁定时,会发生这种情况。锁定是默认情况下(overrideModeDefault=“Deny”),或由具有overrideMode=“拒绝”或旧版的位置标记allowOverride=“false”。

更多细节可以在这里找到,在场景7中匹配我的十六进制错误代码。

上面链接站点上给出的解决方案是在applicationHost.config文件中的错误部分中设置Allow for overrideModeDefault。在我的例子中,在system.webServer中的“安全”下。但如果我查看本地计算机上的applicationHost.config(该站点已正确部署),则该部分设置为“拒绝”。

如果此解决方案是正确的,那么我的本地实例在使用相同的web.config时如何正常运行?根据我的applicationHost.config,该部分应该被锁定,但实际上没有。我宁愿不更改applicationHost.config文件,因为该服务器上还有许多其他站点在运行。还有其他解决方案吗?


当前回答

这对我有用在IIS 8中,也可以通过将服务器更改为IIS Express来解决此问题。转到调试->财产在Web中,从下拉列表中选择服务器作为IIS Express,然后重建解决方案

其他回答

在我的案例中,服务器上未启用.NET Framework功能下的“HTTP激活”。因此,对于Windows Server 2012,对我有效的解决方案是:

服务器管理器->添加角色和功能->功能->确保在要使用的.NET Framework版本下选中“HTTP激活”

我解决了这个问题

转到cmd并执行aspnet_regiis-i

希望对某人有所帮助。

对于Windows Server 2008和IIS 7,过程类似。请参阅:http://msdn.microsoft.com/en-us/library/vstudio/bb763178(v=vs.100).aspx

在添加角色服务中,您将看到“应用程序开发功能”

检查(启用)功能。我检查了所有。

当我收到这条漂亮的消息时,我需要更改子文件夹上的SSL设置。在我的情况下,接下来的行动帮助了我。

已打开C:\Windows\System32\inetsrv\config\applicationHost.config

并将值从overrideModeDefault=“拒绝”更改为“允许”

<sectionGroup name="system.webServer">
 ...
    <sectionGroup name="security">
        <section name="access" overrideModeDefault="Allow" />
    </sectionGroup>

您也可以使用IIS管理器来编辑这些设置。

关注本学习IIS文章:

从IIS根目录使用功能委派:

然后,您可以控制每一个计算机级读/写权限,否则将导致overrideMode=“拒绝”错误。