visual-studio-2010 - core部署到iis - iis部署asp net core




无法在IIS 7.5上运行ASP.NET MVC 2 Web应用程序 (6)

不要使用runAllManagedModulesForAllRequests。 您希望让IIS处理图像等资源。

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>

而是添加MVC路由模块

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

我试图在Windows 7上的IIS下运行ASP.NET MVC 2 Web应用程序,但是我收到403.14错误。 以下是重现的步骤:

  1. 打开Visual Studio 2010
  2. 创建一个名为MvcApplication1的新ASP.NET MVC 2项目
  3. Shift + F5运行应用程序。 您应该看到http://localhost:{random_port}/ ,页面将正确呈现。
  4. 单击MvcApplication1,然后选择“属性”。 转到“Web”部分。
  5. 选择“使用本地IIS Web服务器”并创建虚拟目录。
  6. 保存。
  7. Shift + F5运行应用程序。 您应该看到http://localhost/MvcApplication1/和IIS错误HTTP Error 403.14 - Forbidden The Web server is configured to not list the contents of this directory.

很明显,无论出于何种原因,ASP.NET路由都无法正常工作。

我已经想过并尝试过的事情:

  • 验证在“打开或关闭Windows功能”中启用了所有IIS功能。
  • 验证默认网站配置为使用.NET 4.0
  • 通过v4.0.30319目录中的aspnet_regiis -i重新分配ASP.NET v4脚本v4.0.30319

这是最神奇的部分 - 这是在一个刚刚建造的机器上。 Windows 7 x64 Ultimate的新副本,Visual Studio 2010 Premium的全新安装,没有其他网站,也没有执行其他工作。

还有什么我可以尝试的吗?

将Visual Studio设置为使用本地IIS Web服务器http://i41.tinypic.com/11j176b.png


另外需要注意的是,确保您的应用程序池设置为集成,而不是经典


我一直在VS 2008中使用自定义服务器设置,这仍然允许我调试没有问题。 不确定它在2010年的运作方式是否有所不同


我在IIS8 / Windows Server 2012上遇到了同样的问题。在我尝试以下操作之前,许多提议的解决方案都没有。

dism /online /enable-feature /featurename:IIS-ASPNET45 /All

没有'/ All'开关,它抱怨没有安装父功能。

奇怪的是,根据Windows的“ 打开或关闭Windows功能”设施,已经安装了asp.net 4.5。

无需对web.config进行任何更改,添加或删除模块。


我有这些症状; 我的Global.asax崩溃了。 修复了崩溃,现在一切正常。


还要确保配置文件具有以下行,否则路由将不起作用。

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>




iis-7.5