ASP .NET Core API發布與部署IIS(以及遇到的坑和解決方法)


最近在寫.Net Core的API,由於之前沒接觸過Core,所以自己的想法很簡單,感覺和.Net都是差不多的東西,發布部署還是按.Net的那一套來,可謂是困難重重,走了不少彎路。

        也沒什么漂亮的詞語,也不是技術大牛,就是抱着學習技術的態度,隨手寫寫這一套流程,以及遇到的問題跟解決方法。

        

一、安裝服務器環境

        IIS  Path-->Control Panel\All Control Panel Items\Programs and Features

 

沒細致研究,全裝了~

 

二、發布API

1.選擇File System,設置Target location.

 

2.配置文件,選擇框架依賴,需要安裝SDK,選擇獨立不需要安裝SDK。。還有就是一定要安裝托管模塊(下載地址,下面有說明)

 

  我用的VS2017,設置好了發布就可以~

三、添加網站到IIS

1.添加WebSite,填寫Site name和Physical path.

 

 

2.設置該網站的Application Pools, .NET CLR version設置為 No managed Code.

 

 

四、服務器環境搭建及問題解決

1.安裝.NET Core SDK和AspNetCoreModule托管模塊

ASP.NET Core不再是由IIS工作進程(w3wp.exe)托管,而是使用自托管Web服務器(Kestrel)運行

 

 

鏈接:SDK 密碼:g02o

鏈接:托管模塊 密碼:8mxu

上面的鏈接文件已刪除。。。

 

使用 IIS 在 Windows 上托管 ASP.NET Core:

https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1#install-the-net-core-hosting-bundle

下載.NET Core 3.1(里面有SDK和托管模塊):

https://dotnet.microsoft.com/download/dotnet-core/3.1  

我下載的是3.1.9,IIS運行時支持(ASP.NET核心模塊v2) 托管包,

SDK的話, 看着對應版本安裝吧

下載托管模塊

  1. 導航到 .NET Core 頁面。
  2. 選擇所需的 .NET Core 版本。
  3. 在“運行應用 - 運行時”列中,查找所需的 .NET Core 運行時版本的那一行。
  4. 使用“托管捆綁包”鏈接下載安裝程序。

不出問題基本安裝完后,基本可以訪問了

2.錯誤502.5一般就是沒裝.NET Core SDK和AspNetCoreModule托管模塊

 

 

3.另一個比較奇葩的錯誤

解決方法:看下你的發布文件夾里面是否缺少WebApi.xml,如缺少請手動復制到服務器指定路徑下。

4.如果遇到其他問題請查看日志或者查看官方給出的解決方案(官方解決方案地址

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM