首页 文章

IIS未获取Applicationhost.config中配置的覆盖

提问于
浏览
0

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

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

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

Things I have tried:
在Windows功能菜单中删除并重新启用IIS,因为这被称为解决方案 .
仔细检查我的应用程序是作为应用程序运行,而不是虚拟文件夹 .

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模块和命令行之类的配置 .

相关问题