您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎樣結合Jexus+Kestrel 部署asp.net core生產環境,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
ASP.NET Core 是微軟的全新的框架。這一框架的目標 ︰
跨平臺
針對云應用優化
解除 System.Web 的依賴。 獲得下面三個方面的優勢,你可以把它認為是一個C# 版本的NodeJS:
1) 模塊化實現
2) 一切都盡可能的-異步
3) 依賴關系注入
微軟已經如期發布了.NET Core R2, 具體參見文章《微軟.NET Core RC2正式發布,橫跨所有平臺》,現在可以放心的基于.NET Core 構建 ASP.NET Core 。那么問題就來了,生產環境我們如何部署呢?
ASP.NET Core 的運行環境由新開發的 Kestrel Server 負責,IIS 退回到 HTTP 的偵聽器的角色,微軟也特別為了這個需求開發了 IIS Platform Handler,以處理 HTTP 與運行環境之間的信息轉發工作,微軟官方推薦在Linux服務器上使用Nginx,Haproxy等代理Kestrel Server。Jexus 5.8.1 版本的端口“轉發”功能也類似于IIS 的實現方式,通過端口轉發方式將Kestrel 保護起來,又可以高性能運行。Jexus的實現方式上劉冰的博客《為支持ASP.NET5跨平臺,Jexus再添新舉措》進行了解釋。
下面我們來介紹下怎么設置通過Jexus 把asp.net core 的請求轉發給Kestrel Server來處理。我假設你已經把asp.net core rc2 的網站準備好了,我這里演示的就是我的一個實驗站點“Hello World”, 運行在Azure上的Centos 7.0上,服務端口是127.0.0.1:5000 。
在jexus上為之新建一個網站,在這個網站的配置文件中加一行:
AppHost.Port=5000
通過以上處理,訪問jexus的這個網站,就會把請求轉發到對應的應用上。下面是我的示例dotnetcore,配置文件放在/usr/jexus/siteconf,創建一個網站叫做dotnetcore:
port=5001
hosts=*
AppHost.Port=5000
通過 5001 端口轉發到 5000端口,配置非常簡單,這時的jexus也是一個偵聽和數據轉發的角色。當然,作為服務器,jexus也是一個“網站組織者”的角色。因為每個應用程序容器都有不同的端口,而服務器對外服務器不可能一個端口一個服務。通過jexus的“組織”,就能讓不同的端口通過域名共同一個80端口。
保存后,重啟Jexus服務器就生效了,就可以通過瀏覽器訪問到asp.net core 網站了。
上述內容就是怎樣結合Jexus+Kestrel 部署asp.net core生產環境,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。