您好,登錄后才能下訂單哦!
這篇文章主要講解了“IIS上怎么部署ASP.NET Core Web API”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“IIS上怎么部署ASP.NET Core Web API”吧!
對(duì)于本文,我想與您分享有關(guān)如何在IIS上部署ASP.NET Core Web API的指南。我將指導(dǎo)您安裝Visual Studio 2019,.NET Core Runtime 3.0。我還確保我逐步引導(dǎo)您在服務(wù)器(Web IIS)中啟用它,使用no受管代碼選項(xiàng)創(chuàng)建新的應(yīng)用程序池,創(chuàng)建ASP.NET Core Web API項(xiàng)目以及發(fā)布ASP.NET Core Web API。
了解并遵循正確的步驟來準(zhǔn)備開發(fā)和部署環(huán)境后,在IIS上部署ASP.NET Core Web API就是一件容易的事。
幾天前,Microsoft的Visual Studio團(tuán)隊(duì)宣布了其旗艦產(chǎn)品的一些重大更新,其中包括Dot Net Core 3.0,Visual Studio 16.3,C#8.0和其他產(chǎn)品,我認(rèn)為這對(duì)幫助您開始學(xué)習(xí)這些出色功能很有幫助。
對(duì)于本文,我想與您分享有關(guān)如何在IIS上部署ASP.NET Core Web API的指南。
Visual Studio 2019和Dot Net Core 3.0
您需要下載并安裝的第一個(gè)也是最重要的東西是Visual Studio 2019的最新版本,撰寫本文時(shí)的版本是VS 16.3。
此版本的Visual Studio 2019支持最新版本的Dot Net Core SDK,即3.0。請(qǐng)注意,您無法使用Visual Studio 2017開發(fā)Dot Net Core 3應(yīng)用程序。
在正常情況下,由于您已經(jīng)安裝了Visual Studio 2019的最新版本,因此不必單獨(dú)下載SDK,但是,如果您打開Visual Studio 2019并且由于任何原因都看不到Dot Net Core 3的選項(xiàng),則您可以從Microsoft的官方網(wǎng)站下載Dot Net Core SDK。
開源社區(qū)與Microsoft共同付出了巨大的努力,以不斷更新和改進(jìn)Dot Net Core SDK和運(yùn)行時(shí),因此您可能會(huì)在接下來的幾天中注意到Dot Net Core SDK和Runtime的更新版本。
Windows Server上的Dot Net Core運(yùn)行時(shí)
將Dot Net Core Runtime 3.0(Windows托管捆綁包安裝程序)下載并安裝到托管Windows服務(wù)器中。這應(yīng)該是一個(gè)非常簡(jiǎn)單的步驟。
但是,如果您無權(quán)執(zhí)行此安裝,則可以要求托管服務(wù)器管理員為您執(zhí)行此安裝,否則,您將ASP.NET Core Web API部署為獨(dú)立的部署,這將贏得不需要在托管服務(wù)器中安裝Dot Net Core Runtime。所有必需的運(yùn)行時(shí)庫將作為App部署容器的一部分包含在內(nèi)。
這使您對(duì)應(yīng)用程序投入生產(chǎn)后充滿信心,使其表現(xiàn)出完全如您所測(cè)試的那樣,并且服務(wù)器的Dot Net Core Framework上的任何更新都不會(huì)影響您的應(yīng)用程序。
但是它的缺點(diǎn)是您的部署大小將大大大于框架相關(guān)的部署類型(該類型依賴于服務(wù)器中共享的Dot Net Core Runtime)。
在服務(wù)器上啟用IIS
服務(wù)器中必須啟用的另一件事是Web IIS功能。您可能已經(jīng)在托管服務(wù)器中啟用了此功能,但是,您必須驗(yàn)證是否已在其中安裝了該功能。
在Windows Server上,打開“服務(wù)器管理器”,然后依次選擇“IIS”,“管理”并選擇“添加角色和功能”,然后轉(zhuǎn)到“功能”,然后查看是否已啟用“Web IIS”復(fù)選框,如果沒有,請(qǐng)繼續(xù)進(jìn)行安裝。
IIS應(yīng)用程序池
為了使Dot Net Core應(yīng)用程序能夠在IIS下運(yùn)行,我們必須使用nomanaged code選項(xiàng)創(chuàng)建一個(gè)新的應(yīng)用程序池。
IIS應(yīng)用程序池對(duì)Dot Net Core Apps的運(yùn)行時(shí)沒有任何影響,它僅用作反向代理。
要?jiǎng)?chuàng)建應(yīng)用程序池,請(qǐng)打開您的IIS管理器,然后導(dǎo)航到“應(yīng)用程序池”,然后單擊“添加應(yīng)用程序池”,將出現(xiàn)一個(gè)對(duì)話框,為其命名,例如“DotNetCore”。
在.NET Framework版本中,選擇“無托管代碼”,然后按原樣保留最后一個(gè)選項(xiàng),然后按確定。
您應(yīng)該能夠在“應(yīng)用程序池”面板中看到新創(chuàng)建的應(yīng)用程序池。
IIS網(wǎng)站
由于我們已經(jīng)準(zhǔn)備好應(yīng)用程序池,因此現(xiàn)在我們需要在IIS站點(diǎn)下創(chuàng)建一個(gè)新網(wǎng)站。因此,從IIS管理器的左側(cè)菜單中,右鍵單擊站點(diǎn),然后選擇“添加網(wǎng)站 ”。
在對(duì)話框中,為其命名,例如“My Asp Net Core Web Api”,將其分配給新創(chuàng)建的應(yīng)用程序池“DotNetCore”,然后選擇網(wǎng)站文件夾的物理路徑,確保在服務(wù)器的驅(qū)動(dòng)器中在所需的任何位置創(chuàng)建一個(gè)文件夾。
在“綁定”部分中,確保為它提供一個(gè)用于http的新綁定端口,例如5100和https(例如6100),或者根據(jù)您當(dāng)前的IIS找到合適的端口,您可能會(huì)為其他網(wǎng)站分配了不同的端口。
創(chuàng)建ASP.NET Core Web API項(xiàng)目
打開Visual Studio 2019,創(chuàng)建一個(gè)ASP.NET Core Web Application類型的新項(xiàng)目:
給它一個(gè)名稱和文件夾路徑。
然后選擇API作為項(xiàng)目模板,然后最后按Create。
Visual Studio完成創(chuàng)建項(xiàng)目后,即可嘗試運(yùn)行該應(yīng)用程序。
按下Visual Studio上的“運(yùn)行”按鈕,它將開始構(gòu)建Dot Net Core Web API項(xiàng)目,該API將托管在IIS Express下,它將打開一個(gè)具有l(wèi)ocalhost的本地瀏覽器,并將分配一些端口以及默認(rèn)控制器和動(dòng)作,并在瀏覽器上顯示一些結(jié)果。
如果在瀏覽器上看到一些json輸出,則意味著您的第一個(gè)ASP.NET Core Web API已啟動(dòng)并在您的計(jì)算機(jī)上運(yùn)行。
發(fā)布您的ASP.NET Core Web API
現(xiàn)在,讓我們?cè)赪indows服務(wù)器上也能正常工作。
我們已經(jīng)在服務(wù)器和IIS上準(zhǔn)備好了一切來運(yùn)行我們的網(wǎng)站,因此我們只需要將ASP.NET Core Web API發(fā)布文件發(fā)布到服務(wù)器上的空文件夾中即可。
右鍵單擊項(xiàng)目名稱,然后選擇發(fā)布。
之后,從發(fā)布設(shè)置中,選擇文件夾位置,然后將該路徑作為服務(wù)器中的新文件夾放置(如果可以通過計(jì)算機(jī)上的共享鏈接訪問新文件夾)。
或設(shè)置本地計(jì)算機(jī)的發(fā)布路徑,然后就可以將文件復(fù)制粘貼到服務(wù)器上的文件夾中。
接下來,單擊文件夾位置下的Advanced…鏈接。
然后選擇與框架相關(guān)的部署模式(因?yàn)槲覀円呀?jīng)在Windows Server內(nèi)部安裝了Dot Net Core Runtime 3.0)。
選擇目標(biāo)運(yùn)行時(shí)為win-x64(這應(yīng)基于目標(biāo)計(jì)算機(jī)的操作系統(tǒng)版本),然后按保存,最后按發(fā)布。
現(xiàn)在,Visual Studio將打包您的應(yīng)用程序,并將所有必需的文件寫入新文件夾。
在Visual Studio中收到“已成功發(fā)布”消息或看到上面修改了正確日期的文件后,請(qǐng)切換回windows服務(wù)器,驗(yàn)證新文件夾中是否包含已發(fā)布的文件,然后轉(zhuǎn)到IIS管理器下新創(chuàng)建的網(wǎng)站,右鍵單擊該網(wǎng)站,然后單擊“瀏覽”,然后在URL上添加正確的控制器名稱。
您應(yīng)該會(huì)在機(jī)器的瀏覽器中看到一些與json天氣有關(guān)的隨機(jī)結(jié)果。
恭喜!您已經(jīng)在IIS上創(chuàng)建并部署了第一個(gè)ASP.NET Core Web API。
注意:您可以通過從已發(fā)布的文件夾中打開Web.config并將stdoutLogEnabled屬性值更改為“true”來啟用ASP.NET Core Web API日志記錄,然后您將開始在已發(fā)布的API文件下的新文件夾中看到日志文件。
到這里,您就可以啟動(dòng)并運(yùn)行在IIS上發(fā)布的ASP.NET Core Web API。
感謝各位的閱讀,以上就是“IIS上怎么部署ASP.NET Core Web API”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)IIS上怎么部署ASP.NET Core Web API這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。