簡體   English   中英

直接連接到IIS后的Kestrel

[英]Connect directly to Kestrel behind IIS

我有一個使用asp.net core 2.0 C#制作的Web應用程序。 此應用程序托管在IIS中,因為這是將其公開到Internet的推薦方法。

我現在正在將某些服務托管在與webapp相同的本地局域網中,這些服務需要連接到上述webappp。 我可以連接到公共iis服務器,該服務器當然可以工作。 但是,是否也可以直接連接到IIS管理的Kestrel服務器? 因此,不要連接到public_ip / somewhere,而是連接到kestrel-local-ip:port / somewhere。 優點是:

  • 避免多跳
  • Kestrel應用仍由IIS托管和管理,因此無需擔心自我托管/管理。

在此處閱讀文檔: https : //docs.microsoft.com/zh-cn/aspnet/core/fundamentals/servers/aspnet-core-module?view=aspnetcore-2.1它指出:“已執行其他檢查,並要求不要源自模塊被拒絕。”。 讀取Github復制后,這似乎是一個名為“ MS-ASPNETCORE-TOKEN”的HTTP標頭。

那么這種情況有可能嗎? 要直接連接到IIS,但也要直接連接到kestrel?

如果可能,我應該這樣做嗎? 由於我有很多小的請求,Kestrel可以很好地處理,因此性能提升似乎是巨大的。

我已經測試了這種情況。

當APP紅est在iis后面時,

  1. 您可以使用netstat命令獲取紅est進程的“端口”。

  2. 然后卷曲“ localhost:port”,您將收到400錯誤的請求,還可以獲得指示MS-ASPNETCORE-TOKEN令牌的錯誤日志。

  3. 您可以再次使用MS-ASPNETCORE-TOKEN請求標頭卷曲“ localhost:port”。

暫無
暫無

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

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