Web部署错误到IIS - 应用程序池managedRuntimeVersion

时间:2011-06-06 12:58:10

标签: asp.net .net iis iis-7.5 microsoft-web-deploy

尝试将ASP.NET应用程序部署程序包部署到IIS时,收到错误

  

(您尝试使用的应用程序池将'managedRuntimeVersion'属性设置为'v2.0'。此应用程序需要'v4.0'。

我采取了以下措施:

  • 确保我的服务器的默认.NET Framework版本为4(重新启动计算机上的IIS服务)
  • 确保我的Web应用程序设置为.NET 4
  • 确保应用程序的web.config没有引用要求.NET 2或3.5

此错误的根本原因是什么,以及如何解决?

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:34)

Web Deploy在发布时使用默认的IIS网站设置。要在IIS计算机上更改/确​​认:

  • 转到IIS->默认网站 - >基本设置 - >应用程序池
  • 使用适当的Framework版本
  • 选择ASP.NET v4.0或相应的应用程序池

如果您尝试将此应用程序导入现有站点,请确保其应用程序池的版本相同。我尝试了同样的方法,但没有意识到我的“新”网站是在v2的应用程序池上运行。

默认情况下,请确保默认情况下还为v4.0配置了应用程序池。

enter image description here

enter image description here

答案 1 :(得分:7)

安装Visual Studio时安装了ASP.NET 4。但是,安装过程不会自动将IIS 4注册到IIS,并且现有的IIS网站不会自动分配给.NET 4应用程序池。

要解决此问题,请使用IIS注册ASP.NET,并将目标IIS网站的应用程序池设置为程序包所需的.NET Framework版本。

要执行此操作,请以管理员身份打开Command Prompt并转到C:\Windows\Microsoft.NET\Framework64\v4.0.30319并输入:aspnet_regiis -i

根据Web Deployment FAQ for Visual Studio and ASP.NET

答案 2 :(得分:0)

我尝试在VSTS / TFS中使用 Continuos Deployment ,在我的版本定义(这是默认设置)中,我有一个IIS Web App管理任务(名为Manage IISWebApplication),其中父网站名称设置正确的网站名称,虚拟路径设置也正确。

我只需要修复部署流程部分中的网站名称,其中也包含环境名称和网站名称。

愚蠢,但它让我有2天的时间注意到网站名称在发布定义中的两个位置。