最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

IIS?部署?.NET6?WebApi?應(yīng)用的實現(xiàn)步驟

 更新時間:2026年04月16日 09:49:50   作者:比特魔法師  
本文主要介紹了IIS?部署?.NET6?WebApi?應(yīng)用的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Step1、安裝IIS管理器

左下角放大鏡搜索:服務(wù)器管理器

右上角,點擊“管理”:

選擇“添加角色和功能”:

直接“下一步”:

選擇“基于角色或基于功能的安裝”:

選中服務(wù)器:

勾選“Web服務(wù)器”:

勾選“.NET Framework 4.7 功能”:

執(zhí)行安裝之后,可以在放大鏡搜索到“IIS”:

Step2、安裝 Hosting Bundle

下載地址:

https://dotnet.microsoft.com/en-us/download/dotnet/6.0

安裝:

重啟服務(wù)器,查看模塊:

已包含“ASP.NET Core Module v2”模塊:

Step3、代碼打包發(fā)布

dotnet publish v2.csproj -c Release -r win-x64 --self-contained false -o Publish/V1.0.0

參數(shù)解釋:

  • -c Release:指定生成配置為 Release(優(yōu)化版本,移除調(diào)試符號)。
  • -r win-x64:指定目標(biāo)運行時為 Windows x64。
  • --self-contained false:不包含 .NET 運行時,依賴用戶系統(tǒng)已安裝的 .NET 環(huán)境。
  • -o Publish/V1.0.0:輸出路徑為 Publish/V1.0.0

最終效果:

  • 輸出內(nèi)容:僅應(yīng)用程序文件(.exe、程序集 .dll)和第三方依賴項。
  • 體積:較?。▋H應(yīng)用代碼)。

Step4、IIS 配置網(wǎng)站

右鍵添加網(wǎng)站:

名稱隨便填:

應(yīng)用池配置:

測試:

日志:

Step5、配置 Https

這里使用自簽名證書做演示,IIS面板打開“服務(wù)器證書”:

選擇“創(chuàng)建自簽名證書”:

隨便填個名字:

生成的證書:

右鍵添加網(wǎng)站,這里注意使用“https”:

選擇剛剛生成的證書:

啟動報錯:

萬維網(wǎng)發(fā)布服務(wù) (w3svc) 已停止。除非萬維網(wǎng)發(fā)布服務(wù)正在運行,否則無法啟動網(wǎng)站。

解決方案:

  1. 按下 Win + R,輸入 services.msc,回車。
  2. 在服務(wù)列表中找到 “World Wide Web Publishing Service”。
  3. 如果狀態(tài)為“已停止”,右鍵點擊并選擇“啟動”。

報錯:

ERR_SSL_KEY_USAGE_INCOMPATIBLE

這個錯誤是 Chrome、Edge 等現(xiàn)代瀏覽器為了強化安全策略而引入的,根源在于 IIS 管理器生成的默認(rèn)自簽名證書缺少一個關(guān)鍵的密鑰用法:DigitalSignature。

以管理員身份打開 Windows PowerShell,運行以下命令:

New-SelfSignedCertificate -FriendlyName "Your Certificate Name" -DnsName "localhost" -KeyUsage DigitalSignature -CertStoreLocation cert:\LocalMachine\My -NotAfter (Get-Date).AddYears(10)

命令參數(shù)說明:

  • -FriendlyName “Your Certificate Name”:證書的顯示名稱,可以自定義,例如 “My Dev Certificate”。
  • -DnsName “localhost”:這是最重要的參數(shù)之一。指定證書要綁定的域名或主機名。如果你是通過 IP 地址(如 127.0.0.1)或具體計算機名訪問網(wǎng)站,請務(wù)必將 localhost 替換為對應(yīng)的值。
  • -KeyUsage DigitalSignature:這是修復(fù)錯誤的關(guān)鍵。為證書添加瀏覽器強制要求的數(shù)字簽名密鑰用法。
  • -CertStoreLocation cert:\LocalMachine\My:將證書安裝到本地計算機的“個人”證書存儲中,這樣 IIS 才能識別并使用它。
  • -NotAfter (Get-Date).AddYears(10):將證書的有效期設(shè)置為10年,避免頻繁更換的麻煩。

在 IIS 中綁定新證書:

測試:

IIS 回收配置

防止后臺定時服務(wù)被IIS回收:

  • 步驟 1:打開應(yīng)用程序池高級設(shè)置

打開 IIS 管理器。

在左側(cè)選擇 應(yīng)用程序池,找到目標(biāo)應(yīng)用程序池并右鍵選擇 高級設(shè)置

  • 步驟 2:關(guān)閉固定時間與內(nèi)存回收

回收 部分: 固定時間間隔(分鐘) → 設(shè)置為 0 ; 虛擬內(nèi)存限制(KB) → 設(shè)置為 0 ; 專用內(nèi)存限制(KB) → 設(shè)置為 0

這樣可避免因時間或內(nèi)存限制觸發(fā)的自動回收。

  • 步驟 3:關(guān)閉空閑超時

進程模型 部分: 閑置超時(分鐘) → 設(shè)置為 0

此項控制在無請求時是否終止工作進程,設(shè)為 0 表示永不因空閑而終止。

  • 步驟 4:可選優(yōu)化

啟動模式 設(shè)置為 AlwaysRunning,確保應(yīng)用程序池在 IIS 啟動后立即運行。

發(fā)生配置更改時禁止回收 設(shè)為 True,防止配置更改觸發(fā)回收。

補充:Hosting Bundle

.NET Core Hosting Bundle 是微軟官方提供的一個軟件包,專門用于在 Windows 服務(wù)器上通過 IIS 托管和運行 ASP.NET Core 應(yīng)用程序。你可以將它理解為一座橋梁,無縫連接了 ASP.NET Core 應(yīng)用與 IIS 服務(wù)器。

核心組件與作用

這個安裝包之所以關(guān)鍵,是因為它集合了讓 ASP.NET Core 應(yīng)用在 IIS 上運行所需的幾乎所有核心組件:

組件名稱主要作用
.NET Core 運行時 (.NET Core Runtime)提供了運行 .NET 應(yīng)用程序所需的基礎(chǔ)環(huán)境,包括垃圾回收器、即時編譯器(JIT)和核心庫等。
ASP.NET Core 模塊 (ANCM / ASP.NET Core Module)這是一個關(guān)鍵的 IIS 模塊。它充當(dāng)了反向代理的角色,負(fù)責(zé)將來自 IIS 的請求轉(zhuǎn)發(fā)給后臺的 ASP.NET Core 應(yīng)用(即 Kestrel 服務(wù)器),從而實現(xiàn)了 IIS 與應(yīng)用的集成。
.NET Core 庫 (.NET Core Library)提供了 .NET 應(yīng)用程序運行所需的基礎(chǔ)類庫支持。

主要優(yōu)勢

相比單獨安裝運行時和其他組件,選擇 Hosting Bundle 有幾個明顯的好處:

  • 簡化部署流程:你不需要分別安裝 .NET 運行時、ASP.NET Core 運行時和 IIS 模塊,一個安裝包就能搞定所有必備項,大大降低了部署的復(fù)雜性。
  • 確保兼容與穩(wěn)定:這個捆綁包由微軟官方發(fā)布和維護,確保了各個組件之間的版本兼容性,為生產(chǎn)環(huán)境的穩(wěn)定運行提供了保障。
  • 自動集成與生命周期管理:安裝后,它會自動在 IIS 中注冊 AspNetCoreModuleV2 模塊。同時,IIS 也能自動檢測并管理 ASP.NET Core 應(yīng)用程序的啟動、停止和回收,讓運維更省心。

部署與配置要點

在安裝和配置時,有幾個關(guān)鍵點需要注意:

  1. 安裝順序很重要:建議先安裝好 IIS,再安裝 Hosting Bundle。如果順序反了,可能會遇到跨域或配置方面的問題,此時通常需要卸載并重新安裝 Hosting Bundle。
  2. 重啟 IIS 服務(wù):安裝完成后,建議重啟 IIS 或整個服務(wù)器,以確保所有環(huán)境變量和配置更改都已生效。
  3. 驗證安裝是否成功
    • 檢查 IIS 模塊:打開 IIS 管理器,點擊你的網(wǎng)站,在“模塊”功能中,應(yīng)該能看到名為 AspNetCoreModuleV2 的條目。
    • 配置應(yīng)用程序池:為你的網(wǎng)站創(chuàng)建應(yīng)用程序池時,在“.NET CLR 版本”設(shè)置中選擇 “無托管代碼”。因為 ASP.NET Core 應(yīng)用在獨立的進程中運行,不依賴 IIS 的 .NET 運行時。
  4. 生產(chǎn)環(huán)境與 SDK:在生產(chǎn)服務(wù)器上,不需要安裝 .NET SDK。SDK 主要用于開發(fā)、編譯和發(fā)布,而 Hosting Bundle 已經(jīng)包含了運行應(yīng)用所需的一切。

總的來說,.NET Core Hosting Bundle 是你在 Windows Server + IIS 環(huán)境下部署 ASP.NET Core 應(yīng)用的核心工具。它通過集成運行時的必要組件和關(guān)鍵的 IIS 反向代理模塊,讓 .NET 應(yīng)用能夠在傳統(tǒng)強大的 IIS 服務(wù)器上高效、穩(wěn)定地運行。

到此這篇關(guān)于IIS 部署 .NET6 WebApi 應(yīng)用的實現(xiàn)步驟的文章就介紹到這了,更多相關(guān)IIS 部署 .NET6 WebApi 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 發(fā)布一個基于TokyoTyrant的C#客戶端開源項目

    發(fā)布一個基于TokyoTyrant的C#客戶端開源項目

    目前在網(wǎng)上關(guān)于TokyoCabinet(以下簡稱TC)和TokyoTyrant(以下簡稱TT)的資料已相對豐富了,但在.NET平臺上的客戶端軟件卻相對匱乏,因為做Discuz!NT企業(yè)版的關(guān)系,兩個月前開始接觸TC和TT,開始寫相關(guān)的客戶端代碼。
    2010-07-07
  • asp.net 使用Response.Filter 過濾非法詞匯

    asp.net 使用Response.Filter 過濾非法詞匯

    一般信息發(fā)布網(wǎng)站,論壇等均具有實現(xiàn)非法詞匯過濾功能,即當(dāng)用戶錄入非法詞匯時,進行替換,使其無法顯示到頁面上,針對此種功能,通常采用的時,在讀取時,在讀到非法詞匯后,進行替換。
    2010-03-03
  • 一個簡單的asp.net 單點登錄實現(xiàn)

    一個簡單的asp.net 單點登錄實現(xiàn)

    上次做了學(xué)校的火車訂票系統(tǒng),那邊要求要從學(xué)生信息平臺直接點過來就是登錄狀態(tài),不用在重新登錄。學(xué)生信息平臺原來是用asp做的,而火車訂票系統(tǒng)是asp.net做的。兩個網(wǎng)站的學(xué)生信息調(diào)用的是同一個數(shù)據(jù)庫。
    2009-11-11
  • ABP引入SqlSugar框架的簡單版創(chuàng)建使用

    ABP引入SqlSugar框架的簡單版創(chuàng)建使用

    這篇文章主要為大家介紹了ABP引入SqlSugar框架的簡單版創(chuàng)建使用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • 詳解ASP.NET Core 之 Identity 入門(一)

    詳解ASP.NET Core 之 Identity 入門(一)

    本篇文章主要介紹了ASP.NET Core 之 Identity 入門,主要負(fù)責(zé)對用戶的身份進行認(rèn)證,有興趣的可以了解一下。
    2016-12-12
  • 徹底解決ASP.NET MD5加密中文結(jié)果和ASP不一致的問題

    徹底解決ASP.NET MD5加密中文結(jié)果和ASP不一致的問題

    ASP.NET MD5加密中文結(jié)果和ASP不一致的問題的解決方法
    2009-07-07
  • ASP.NET Core3.1 Ocelot負(fù)載均衡的實現(xiàn)

    ASP.NET Core3.1 Ocelot負(fù)載均衡的實現(xiàn)

    這篇文章主要介紹了ASP.NET Core3.1 Ocelot負(fù)載均衡的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • vs2012創(chuàng)建的ado.net模型無法實例化的解決方案

    vs2012創(chuàng)建的ado.net模型無法實例化的解決方案

    本文給大家分享的是升級vs2012后,發(fā)現(xiàn)創(chuàng)建數(shù)據(jù)模型無法實例化使用,嘗試了很多種方法,最后在度娘的幫助下,才解決了這個問題,這里記錄下來,分享給大家。
    2015-03-03
  • .NET CORE中比較兩個文件內(nèi)容是否相同的最快方法

    .NET CORE中比較兩個文件內(nèi)容是否相同的最快方法

    這篇文章主要給大家介紹了關(guān)于.NET CORE中比較兩個文件內(nèi)容是否相同的最快方法,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用.NET CORE具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • ASP.NET中MVC傳遞數(shù)據(jù)的幾種形式總結(jié)

    ASP.NET中MVC傳遞數(shù)據(jù)的幾種形式總結(jié)

    這篇文章主要介紹了ASP.NET中MVC傳遞數(shù)據(jù)的幾種形式,以實例形式較為詳細的分析總結(jié)了MVC數(shù)據(jù)傳遞的相關(guān)技巧與注意事項,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10

最新評論

开原市| 于田县| 宜丰县| 三明市| 聂拉木县| 民县| 江山市| 石阡县| 黄大仙区| 平凉市| 商洛市| 柘城县| 合江县| 新龙县| 义马市| 汝州市| 千阳县| 当雄县| 荥阳市| 耿马| 灵宝市| 九台市| 桐柏县| 综艺| 盐边县| 四子王旗| 余江县| 尼木县| 阿巴嘎旗| 湖州市| 泊头市| 罗源县| 逊克县| 彩票| 玉龙| 增城市| 宁陵县| 锦州市| 淳安县| 雅江县| 高平市|