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

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

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

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

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


当前回答

1.打开“打开或关闭windows功能”:WinKey+R=>“optionalfeatures”=>确定

在“应用程序开发功能”下启用这些功能

在Win 10上测试过-但可能也会在其他windows版本上运行。

其他回答

在Vista Home Premium上安装IIS 7后收到了同样的问题。为了更正错误,我更改了Windows\system32\inetsrv中applicationHost.config文件中的以下值。

更改-->部分中的以下所有值

<div mce_keep="true"><section name="handlers" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div>
<div mce_keep="true"><section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div>

你能试试这个吗

转到出现拒绝错误的应用程序路径,右键单击

财产->安全选项卡

在这一步中,更改权限并选中“读写”复选框。然后它将工作,希望没有任何错误。

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

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

对于Windows Server 2012和IIS 8,过程类似。

应安装Web服务器(IIS)和应用程序服务器,并且还应在应用程序服务器下具有可选的Web服务器(IIS)支持。

在注册表中添加以下项解决了我的问题:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASP.NET_64\Performance

当我尝试这些步骤时,我总是出错:

搜索“打开或关闭窗口功能”检查“Internet信息服务”检查“万维网服务”检查“应用程序开发功能”启用此项下的所有项目

然后我查看了事件查看器,发现了以下错误:无法安装计数器字符串,因为SYSTEM\CurrentControlSet\Services\ASP.NET_64\Performance键无法打开或访问。数据段中的第一个DWORD包含Win32错误代码。

为了解决这个问题,我在注册表中手动创建了以下条目:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASP.NET_64\Performance

并遵循以下步骤:

搜索“打开或关闭窗口功能”检查“Internet信息服务”检查“万维网服务”检查“应用程序开发功能”启用此项下的所有项目