【问题标题】:HTTP 500.31 error when deploying .net 5.0 application upgraded from .net core 2.2 using advanced Installer使用高级安装程序部署从 .net core 2.2 升级的 .net 5.0 应用程序时出现 HTTP 500.31 错误
【发布时间】:2021-08-19 14:03:31
【问题描述】:

我们有一个 .net core 2.2 应用程序,已升级到 .net 5.0。更新了对 csproj 文件和 nuget 包的所有必要更改,并删除了其他不必要的包。我们可以使用 VS 运行,也可以手动发布。

但是,当使用高级安装程序、IIS 配置和安装程序移动的文件部署网站时,我们会在启动时收到 500.31 http 错误,并且网站正在寻找 Microsoft.Data.SqlClient.SNI.runtime强>包。请注意,当我们尝试在不更改 IIS 配置的情况下手动将同一文件夹中的工件粘贴到同一目录中时,应用程序工作正常。

这真的让我很难过,因为能够手动粘贴到文件夹中并运行应用程序消除了构建和 IIS 配置作为罪魁祸首。我已经为用户提供了应用程序池运行的完全控制权,该用户可以完全控制应用程序所在的整个目录。

只是为了提供更多信息,应用程序是使用以下语句部署的:

dotnet build %projFile% -p:DeployOnBuild=true -p:PublishProfile=%pubProf% -p:Configuration=Release -v n

提前感谢您的帮助

【问题讨论】:

  • 您是否更新了 IIS 端 ASP.NET Core 模块以兼容 .NET 5?您不能将 .NET Core 2.2 版本与 .NET 5 运行时一起使用。一份报告应为您提供有关 IIS 需要进行哪些额外更改的更多信息,docs.jexusmanager.com/tutorials/ancm-diagnostics.html
  • 项目正在运行 .net 5.0,因此他们不会寻找任何 .net 2.2。如果我们手动将应用程序工件粘贴到文件夹中,它们就可以正常工作。
  • 当我检查 IIS 模块时,新版本的 aspnetcore 模块确实出现了。我们让安装程序在尝试部署任何应用程序之前安装 .net 5.0.8 托管包。

标签: .net iis .net-core upgrade advanced-installer


【解决方案1】:

经过几天的搜索,原因似乎是 pdb 文件没有部署到应用程序目录,并且依赖项需要 Microsoft.Data.SqlClient.SNI.runtime 的 pdb

【讨论】:

猜你喜欢
  • 2021-02-04
  • 2010-10-20
  • 1970-01-01
  • 2023-01-29
  • 1970-01-01
  • 2021-05-14
  • 2011-07-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多