asp.net-mvc - IIS 7 中的 ASP MVC 结果为 : HTTP Error 403. 14 - 禁止

标签 asp.net-mvc iis hosting

我正在开发一个 ASP MVC Web 项目。现在我有一个要求,迫使我在开发过程中部署到 IIS7(以检查某些功能)。每当我尝试输入网站的 URL 时,都会收到上述错误消息。 (注:开发机:Vista Home Premium、IIS7)

到目前为止我所做的事情:

编辑 HOSTS 文件 (C:\WINDOWS\system32\drivers\etc\hosts)。

在其中放入两个域(127.0.0.1domain1.com 和 127.0.0.1domain2.com)。

创建了一个文件夹 c:\websites\dirOfApplication 并从 Visual Studio 8 中部署到此文件夹。

在 IIS7 中创建了一个主机名为 domain1.com 的新站点,并使用上面的应用程序文件夹。

在 Web 浏览器中键入地址 domain1.com 会导致上述错误(HTTP 错误 403.14 - 禁止 - Web 服务器配置为不列出此目录的内容。)

我想我错过了一些东西,但不知道是什么!尝试部署 System.Web.Mvc、System.Web.Abstraction 和 System.Web.Routing 文件,结果相同。每当我尝试按 F5 并运行应用程序时,它都工作正常!

最佳答案

也许这对某人有用: 将我的应用程序转换为带有 .NET Framework 4.5 的 MVC 4 并使用 IIS 7.0 在我的服务器上安装该框架后,我遇到了问题中提到的相同“禁止”错误。当我注意到

时,我尝试了上述所有选项均无济于事
<system.webServer>
 <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
我的 web.config 中缺少

。 添加此后,一切正常。简单,但容易被忽视...

编辑:

上面的解决方案当然可以,但是确实浪费资源。我认为最好添加路由模块,如Chris Herring指出的那样在评论中。

<system.webServer>
  <modules>
    <remove name="UrlRoutingModule-4.0" />
    <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
  </modules>
</system.webServer>

关于asp.net-mvc - IIS 7 中的 ASP MVC 结果为 : HTTP Error 403. 14 - 禁止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1741439/

相关文章:

javascript - 在 C# 中使用 JavaScript 数组填充 Razor 表

asp.net-mvc - 在IIS7中为同IP的两个站点配置SSL

c# - 为什么WCF代理对象无法访问全局静态对象?

iis - 如何允许匿名访问 IIS 7.5 上的网站?

node.js - 托管 NodeJS 应用程序

asp.net - .Net 平台有 Django 或 Rails 吗?

javascript - 为什么我的 jqgrid 没有显示任何数据?

c# - 如何在 cshtml(razor)上设置属性?

scala - 电梯项目主持人

hosting - 如何在 parse.com 添加在 goDaddy 购买的自定义域名