我有一个干净的 Windows 2008 R2 机器(在虚拟机上),并使用默认选项安装了 IIS 7.5。然后我将一个网站复制到其中(从 Windows 7,IIS 7),经过一些调整后,该网站运行正常。
该网站目前正在使用匿名身份验证。
我已返回到 Windows 组件/服务器管理器,角色 -> 安全并勾选并安装了 Windows 身份验证。
当我在 IIS 中检查我的服务器(站点上方的顶层)-> 身份验证时,我看到
匿名身份验证(已启用)
ASP.NET 模拟(已禁用)
表单身份验证(已禁用)
Windows 身份验证(已启用)
当我检查我的默认网站 -> 身份验证时,我看到的内容如上所示,但显示“正在检索状态”和一个错误对话框,提示
There was an error while performing this operation.
Details:
Filename c:\inetpub\wwwroot\screwturnwiki\web.config
Line number: 96
Error: This configuration section cannot be used in this path. This happens
when the section is being locked at the parent level. Locking is either by default
(overriderModeDefault="Deny"), or set explicity by a location tag with overrideMode="Deny"
or the legacy allowOverride="False".
我曾尝试手动编辑 web.config,但没有成功。(如何在 IIS7 配置中使用锁定)
卸载 Windows 身份验证后,我的网站可以顺利地使用匿名身份验证,并允许我启用/禁用这三个选项。
仅供参考。我正在使用带有 Active Directory 插件的 ScrewTurnWiki。它在本地 Windows 7 IIS 7 下运行良好(已经运行了几个月)
Web 配置
<system.webServer>
(edit)
<handlers> ( deleted removes/adds ) </handlers>
<security>
<authentication>
96: <windowsAuthentication enabled="true" useKernelMode="true">
<extendedProtection tokenChecking="Allow" />
<providers>
<clear />
<add value="NTLM" />
<add value="Negotiate" />
</providers>
</windowsAuthentication>
</authentication>
</security>
答案1
呼呼... 我要阅读全文。
答案是编辑
%windir%\system32\inetsrv\config\applicationHost.config
overrideModeDefault="Deny"
归档并从安全部分中删除。