如何为 aps.net 核心 2.1 启用 Connection:Keep-Alive

How to enable Connection:Keep-Alive for aps.net core 2.1

我在 windows 服务器上有一个 asp.net 核心 2.1 网站 运行 作为 Azure Web 应用程序。我被要求启用 "keep-alive" 以便当客户端请求 "Connection:Keep-Alive" 时连接不会关闭。我找不到有关如何执行此操作的任何文档(甚至可能也找不到)。

获得持久连接的原因(如果这是正确的术语)是为了减少 SSL 协商的开销。

我确实发现了这个:Azure Website Connection Keep-Alive 堆栈溢出问题。提供的答案没有帮助。 asp.net 核心网络应用程序中没有 web.config 文件。我没有在 asp.net 核心中找到关于 Keep-Alive 的任何其他信息。

实际上,Web 应用程序中仍然会有一个用于 IIS 的 web.config 文件。发布 .NET Core Web 应用程序后,您可以使用门户中的 Azure Kudu 工具检查文件,您会发现系统生成的 web.config。

因此,您可以在项目中手动添加一个 web.config 文件:

然后选择网页配置文件

然后,您可以添加您的配置:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <httpProtocol allowKeepAlive="true" />
  </system.webServer>
</configuration>

最后,部署你的项目,配置将在kudu中更新: