WebAPI概述
開發(fā)人員可以使用各種屬性和過濾器來處理請求、控制訪問權(quán)限、驗證數(shù)據(jù)等。WebAPI 是一種傳統(tǒng)的方式,用于構(gòu)建和暴露 RESTUI風(fēng)格的Web服務(wù)。它提供了豐富的功能和靈活性,可以處理各種HTTP請求,并支持各種數(shù)據(jù)格式,如JSON、XML等。WebAPI使用控制器(Controllers)和動作方法(ActionMethods)的概念、通過路由配置將請求映射到相應(yīng)的方法上。
ASP.NET Core Web API 是構(gòu)建 RESTful 應(yīng)用程序的理想平臺。 可以把WebApi看成Asp.Net項目類型中的一種,其他項目類型諸如我們熟知的WebForm項目,Windows窗體項目,控制臺應(yīng)用程序等。Gungho小程序部署的時候就用到了基于ASP.NET Core Web API 開發(fā)的GunghoAPI服務(wù)
那么怎樣將ASP.NET Core Web API 部署到IIS
首先要確保IIS環(huán)境配置正確
除了 IIS服務(wù)以外,上述這些選項需要設(shè)置
要將ASP.NET Core Web API 項目部署到 IIS,請按照以下步驟操作:
1、確保你的 ASP.NET Core 項目已經(jīng)發(fā)布(Release 模式)。
這個部分是開發(fā)需要按要求發(fā)布項目
2、在IIS 服務(wù)器上安裝 .NET Core 托管運行時(Hosting Bundle)。
Hosting Bundel 下載(這里用的是 .net 8.0)
下載后,在服務(wù)端安裝
安裝后,到IIS管理器查看
說明 部署成功
3、在 IIS 管理器中創(chuàng)建一個應(yīng)用程序池,并將其設(shè)置為使用無托管代碼。
輸入應(yīng)用程序池名稱,選擇“.NET CLR 版本”為“無托管代碼”。
4、配置應(yīng)用程序池以使用 x64 位平臺(因為 .NET Core 是64位應(yīng)用程序)。
打開你剛剛創(chuàng)建的應(yīng)用程序池的屬性->切換到“高級設(shè)置”->在“啟用32位應(yīng)用程序”中選擇“False”
5、在 IIS 管理器中創(chuàng)建一個新的網(wǎng)站或?qū)?yīng)用程序發(fā)布到現(xiàn)有的物理路徑。
6、為網(wǎng)站配置正確的權(quán)限,確保應(yīng)用程序池的身份具有訪問網(wǎng)站文件的權(quán)限。
確保應(yīng)用程序具有適當?shù)臋?quán)限,通常是應(yīng)用程序池的身份
7、確保網(wǎng)站綁定了正確的端口。
確保你的服務(wù)器防火墻設(shè)置允許通過你選擇的端口(例如:80 或 443)的流量