30

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

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

我已经采取了这些步骤:

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

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

在此处输入图像描述

在此处输入图像描述

4

3 回答 3

34

Web 部署在发布时使用默认的 IIS 网站设置。要在您的 IIS 机器上更改/确​​认这一点:

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

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

确保默认情况下您的应用程序池也默认配置为 v4.0。

在此处输入图像描述

在此处输入图像描述

于 2011-08-25T18:36:00.587 回答
7

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

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

为此Command Prompt,请以管理员身份打开C:\Windows\Microsoft.NET\Framework64\v4.0.30319并输入:aspnet_regiis -i

根据Visual Studio 和 ASP.NET 的 Web 部署常见问题解答

于 2013-10-27T11:26:27.993 回答
0

我试图在 VSTS/TFS 中使用Continuos 部署,在我的发布定义(这是默认设置)中,我有一个 IIS Web 应用程序管理任务(名为 Manage IISWebApplication),它的父网站名称设置具有正确的网站名称,并且虚拟路径设置也是正确的。

我只需要在部署过程部分修复网站名称,其中还包含环境名称和网站名称。

很傻,但我花了 2 天时间才注意到网站名称出现在发布定义中的两个位置。

于 2018-02-19T14:30:50.860 回答