【问题标题】:ASP.NET Core web app response with 502 error带有 502 错误的 ASP.NET Core Web 应用程序响应
【发布时间】:2017-10-29 17:00:42
【问题描述】:

我正在调查 asp.net core 1.1 Web 应用程序的问题。

我们必须在构建服务器上安装最新的 VS 2017。紧接着,所有部署的构建都返回 502 响应。应用程序代码或引用的包没有任何变化,但是,许多二进制文件在 VS 2017 安装后有所不同。部署是通过 FTP 完成的。

我还注意到现在 Http 响应标头有一点不同。 API 响应标头曾经有 Server: Kestrel。但是现在,安装 VS2017 后,部署的构建返回 Server: Microsoft-IIS/10.0。这可能解释了 502 错误,但为什么服务器现在会切换到 IIS?

【问题讨论】:

  • 有趣的是你在构建服务器上安装了 VS
  • 必须,否则,一个新的 azurefunctions 应用程序将无法使用 msbuild 构建
  • 与您的实际问题无关,但如果您只使用 .net 核心,dotnet-core-sdk 就足以构建。
  • 它正在使用 dotnet publish
  • 你是如何通过 ftp 部署的?只是复制文件还是您正在使用 Visual Studio 的发布? '

标签: asp.net-core


【解决方案1】:

设法修复它。该错误是由于 IIS 服务器(代理)无法访问 AspNetCoreModule(托管 kestrel 的进程)引起的。通常,原因是因为红隼遇到了一些麻烦。 该解决方案首先在服务器上的事件查看器中检查应用程序日志。 在我的情况下是:

物理根目录为“\servername\c$\inetpub\wwwroot\MyApp.Api\”的应用程序“MACHINE/WEBROOT/APPHOST/MyApp.API”无法使用命令行“dotnet”.\MyApp.Api 启动进程。 Web.dll', ErrorCode = '0x80004005 : 80008083.

所以,通过谷歌搜索错误代码,我意识到服务器没有正确的 asp.net 核心版本(出于某种原因)。

已下载安装程序,现在可以正常使用了! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-25
    • 2016-01-22
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多