search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

IT之家學院:.Net Core在Linux伺服器上部署.NET框架教程

感謝IT之家網友 DotNet碼農 的投稿

1、簡介

一直以來,微軟只對自家平台提供.NET支持,這樣等於讓這個「理論上」可以跨平台的框架在Linux和macOS上的支持只能由第三方項目提供(比如Mono .NET)。直到微軟推出完全開源的.NET Core。這個開源的平台兼容.NET Standard,並且能在Windows、Linux和MacOS上提供完全一致的API。雖然這個小巧的.NET框架只是標準.NET的一個子集,但是已經相當強大了。

一方面,這個小巧的框架可以讓某些功能性應用同時運行在三個平台上(就像某些功能性的Python腳本一樣),另一方面,這也可以讓伺服器運維人員將ASP .NET服務程序部署在Linux伺服器上(特別是對於運行Windows Server較為吃力的伺服器)。

2、部署.NET Core

由於我沒有可用的macOS設備,我將僅用Linux(伺服器)作示範。我作示範的伺服器是CentOS7操作系統。

SSH連接至伺服器,安裝.NET Core的依賴項:

然後從微軟官方獲取.NET Core的主程序:

如果你的伺服器不能正確訪問這個地址,你可能需要手動訪問後面的地址,下載完畢之後,用任意一種方法傳遞進伺服器,並命名為dotnet.tar.gz。

執行指令將組件解壓至指定的位置:

創建鏈接以在任何路徑下直接引用dotnet指令:

至此,.NET Core框架應該就在你的伺服器上搭建好了。

3、嘗試部署一個ASP .NET服務程序

在本地計算機上,修改Visual Studio功能,確保這一項是被安裝的:

啟動Visual Studio,新建一個ASP .NET Core項目:

類型選擇Web應用程序。我們不對示例作太大的修改,僅僅是為了演示ASP .NET運行於.NET Core的狀況。在項目資源管理器內打開Program.cs,依然是熟悉的C#代碼:

為了能正常運行,我們稍稍修改代碼,讓host的對象初始化器看起來是這個樣子:

保存工程,將整個解決方案上傳至伺服器。再次連接伺服器,導航到你存放工程文件的目錄下,執行指令:

該指令指揮.NET Core恢復這個工程引用的包,耐心等待指令執行完畢。

接著,執行指令:

這條指令將使.NET Core編譯並運行這個工程。控制台沒有錯誤信息併產生類似輸出,你的ASP .NET Core應用程序就應該在正確運行了:

試著在任意設備上訪問你伺服器的IP地址(或者域名),如果能正確載入默認頁面,你的.NET Core環境就算部署完畢了:

這個.NET框架只是.NET標準的一個子集,不一定能100%兼容一個複雜的ASP .NET服務程序。但是利用這個框架,你可以把伺服器切換至Linux系統,卻仍然採用ASP .NET作為服務程序的具體實現方法。你也不必為了調試運行於Linux的服務程序而專門去配置一個Linux工作環境——因為.NET Core也可以運行在Windows上,Visual Studio本身就支持使用IIS Express來本地調試一個ASP .NET Core應用程序。

想看到更多這類內容?去APP商店搜IT之家 ,天天都有小歡喜。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦