尝试将ASP.NET应用程序部署程序包部署到IIS时,收到错误
(您尝试使用的应用程序池将'managedRuntimeVersion'属性设置为'v2.0'。此应用程序需要'v4.0'。
我采取了以下措施:
此错误的根本原因是什么,以及如何解决?
答案 0 :(得分:34)
Web Deploy在发布时使用默认的IIS网站设置。要在IIS计算机上更改/确认:
如果您尝试将此应用程序导入现有站点,请确保其应用程序池的版本相同。我尝试了同样的方法,但没有意识到我的“新”网站是在v2的应用程序池上运行。
默认情况下,请确保默认情况下还为v4.0配置了应用程序池。
答案 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
答案 2 :(得分:0)
我尝试在VSTS / TFS中使用 Continuos Deployment ,在我的版本定义(这是默认设置)中,我有一个IIS Web App管理任务(名为Manage IISWebApplication),其中父网站名称设置正确的网站名称,虚拟路径设置也正确。
我只需要修复部署流程部分中的网站名称,其中也包含环境名称和网站名称。
愚蠢,但它让我有2天的时间注意到网站名称在发布定义中的两个位置。