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

时间:2012-09-19 08:13:47

标签: iis configuration web-config

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

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

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

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

1 个答案:

答案 0 :(得分: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模块和命令行之类的配置。