0

在 win8 机器上使用 VS2012 中的 Web 项目时,我遇到了一个在 google 上很常见的错误,即
HTTP 错误 500.19 - 内部服务器错误
此配置部分不能在此路径中使用。当该部分锁定在父级别时会发生这种情况。锁定是默认情况下 (overrideModeDefault="Deny") 或由具有 overrideMode="Deny" 或旧 allowOverride="false" 的位置标记显式设置的。

到处提到的解决方案是找到 C:\Windows\System32\inetsrv\Config\applicationHost.config 文件并更改以下内容:
section name="handlers" overrideModeDefault="Allow"

唉,我仍然得到完全相同的错误。

我尝试过的事情:
在 Windows 功能菜单中删除并重新启用 IIS,因为这是作为解决方案提到的。
仔细检查我的应用程序是否作为应用程序运行,而不是虚拟文件夹。

4

1 回答 1

2

如果您没有误解无法访问的部分(错误详细信息应提及它是哪个部分)并且您的应用正在添加处理程序,那么您可能会与 UAC 虚拟化发生冲突。

当您尝试访问该文件时,该文件将获得一个虚拟版本,这将是您始终获得的版本,但实际文件仍将提供给 IIS。一种检查方法是触发应该从 IIS 管理器写入 aphost 的更改(例如应用程序的 Windows 身份验证设置与默认值不同),并查看您在查看文件时是否得到它

下面详细介绍 UAC 包括 VirtualStore http://technet.microsoft.com/en-us/magazine/2007.06.uac.aspx

尝试以管理员身份打开文件,禁用 UAC 也是一个选项。您还可以使用 IIS 管理器将处理程序添加到您的应用程序,并将它们从 web.config 中删除。

没有 IIS 提供的所有工具来管理配置,例如 powershell 模块和命令行。

于 2012-11-30T14:08:49.407 回答