IIS 7.5,8.0,8.5 HTTP错误403.14 - 清除Windows安装后禁止

Mar*_*ian 4 asp.net iis visual-studio-2012

我在IIS 7.5下运行Asp .Net网站 - 赢得7,IIS 8.5 - 赢得8.1.我有两台正常运行的开发机器.

  1. 重新创建环境的步骤在另一台计算机上重新安装Win 7之后.安装了所有更新

    添加了IIS功能

    • .Net可扩展性
    • 天冬氨酸
    • CGI
    • ISAPI扩展
    • ISAPI过滤器

    使用IIS注册.Net框架4.0(aspnet_regiis -i/aspnet_regiis -ir)

为网站添加了正确的应用程序池

设置项目的bin文件夹的路径.

在web.config中设置:

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

对特定文件夹的Aded IIS/IIS_USRS读写权限

*注意:我不需要启用目录浏览

  1. 问题
    • 在所有新的操作系统安装中,没有什么获胜版本(7,8,8.1或10预览版)我得到相同的错误****HTTP错误403.14 - 禁止Web服务器配置为不列出此目录的内容.****

如果有人可以提供帮助,因为我找不到地方寻找问题.

*注意 - 使用win 7和server 2008的3台开发机器上的相同设置工作正常.如果我部署发布它可以正常工作.(包含.aspx页面)

谢谢

Gee*_*eeb 9

正如我在下面的评论中所说的OP,我已经尝试了常见嫌疑人名单上的所有内容.在失去了我生命中几天与这个问题搏斗之后,这就是为我解决的问题: -

由于某些原因最了解dotNet的恶意力量,使用发布期间预编译设置发布我的Web应用程序(在VS 2012中的发布对话框的"设置"选项卡中的" 文件发布选项"中找到)导致某些MVC应用程序使用错误的处理程序.这几乎就像IIS"忘记"他们是MVC应用程序.

一个小文本文件,名为:

PrecompiledApp.config
Run Code Online (Sandbox Code Playgroud)

是在故障应用程序的根目录中创建的.

删除此文本文件并随后在没有预编译设置的情况下发布会使故障应用程序恢复正常!

我没有最微弱的线索,为什么这个选项应该造成这样的不利影响,但这似乎是原因.

(我还将所有对MVC依赖项的引用设置为"copy local",但这是在"通常可疑"列表中要做的事情.)

与大多数事情一样,dotNet与修复这些神秘问题有关,因为这需要几天将一个人的头撞在墙上,随意改变设置,直到有所作为.通常没有合理错误的逻辑原因或记录的例子,你只是留下巫毒,传闻和拖网站点,如SO的答案.

Gimme开源软件任何一天......