【问题标题】:IIS not picking up override configured in Applicationhost.configIIS 未获取 Applicationhost.config 中配置的覆盖
【发布时间】:2012-09-11 12:46:20
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: iis configuration web-config


    【解决方案1】:

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

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2011-01-02
      • 2020-03-09
      • 1970-01-01
      • 2020-01-23
      • 1970-01-01
      • 1970-01-01
      • 2011-08-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多