.NetCore WebAPI初嘗試和部署IIS


.NetCore已經相當熟悉了,在此做一個簡單的demo嘗試,方便幫助新學習的朋友的,順便也記錄下有些小坑,廢話不多說直接上代碼,(順便說下小demo結合了sqlsugar ORM框架從數據庫獲取了數據)

1、新建一個.net core WebAPI項目

 

 

2、可直接運行,結果如下

 

 

3、接下來我們新建一個API,命名ReplenishLrController

(獲取數據邏輯在此不細述,咋們本次主要是聊使用的部署IIS)

 

 

 

 

4、運行結果如下

 

 

 

 

5、發布 WebAPI ,發布的目標是文件

 

 

 

6、IIS常規部署,然后將應用程序池改為無托管模式

 

 

 

就此,是不是以為就結束大功告成了,其實並沒有,接下來才是要說的重點,因為會有好幾個問題

問題一:報錯500.19

 

 這是因為 .NET Core 是自托管的,所以要再 IIS 上面托管 .NET Core 要安裝一個.NET Core 托管捆綁包,這個包可以在官網下載

本人裝的2.2版本的

 

安裝完成之后網站模塊會多出core的運行時。如圖

 

 問題二:報錯404

因為.NetCore 5.0 自帶集成了Swagger , 在發布項目時,通常會在代碼中限制ASPNETCORE_ENVIRONMENT為Production時關閉Swagger。

解決方法:
項目發布后默認為 Production 生產環境,可修改 web.config 文件,在web.config中添加一下代碼(如下圖),改成 Development 開發環境就可以訪問。

<environmentVariables>
	<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
</environmentVariables>

 

 

 再次嘗試訪問,應該就OK了,在此記錄下,方便后者參考。


免責聲明!

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



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