簡體   English   中英

IIS 如何將 HTTPS 請求轉發到 Kestrel?

[英]How does IIS forward HTTPS requests to Kestrel?

我有一個用 ASP.NET Core 編寫的 Web 應用程序。 默認使用 Kestrel; 我在 IIS 上托管它。 我想從 IIS 配置 https。 紅隼會“只知道”如何處理這個問題? 是否需要通過反向代理使 https 與 Kestrel 一起工作?

你不需要做任何特別的事情,只需:

  1. 在 IIS 服務器上安裝 .NET Core Hosting Bundle。 (重啟服務器)
  2. 在 IIS 上創建網站。
  3. 將您的項目發布到網站。
  4. 將 Https 的站點綁定添加到您的網站。

完畢。

更多信息: 將 ASP.NET Core 應用程序發布到 IIS

我在 IIS 上做了一些測試

將 asp.net core 應用程序部署到 IIS 時

紅隼將不再使用。

相反,asp.net 核心使用 HttpSys

例如

ctx.Response.Headers.GetType().FullName
is 
"Microsoft.AspNetCore.HttpSys.Internal.HeaderCollection"

這些類在程序集中:

C:\\Program Files\\dotnet\\shared\\Microsoft.AspNetCore.App\\3.1.3\\Microsoft.AspNetCore.Server.IIS.dll

因此,IIS 將接受 80 和 443 請求並重定向到 asp.net 核心

(無需為 Kestrel 配置 SSL)

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM