目錄
1.前言
2.環境和軟件的准備
3.創建.NET Core API項目
4.VMware Workstation虛擬機及Centos 7安裝
5.Centos 7安裝.NET Core環境
6.發布.NET Core項目到Linux
7.啟動和停止.NET Core項目
8.為.NET Core項目創建Supervisor進程守護監控
9.防火牆配置,允許外網或局域網訪問.NET Core站點
10.總結
Kestrel是一個基於libuv的跨平台ASP.NET Core web服務器,libuv是一個跨平台的異步I/O庫。ASP.NET Core模板項目使用Kestrel作為默認的web服務器。
如果你將你的應用部署在公共網絡上,我們建議你使用IIS,Nginx或者Apache作為反向代理服務器。一個反向代理服務器接收來自網絡的HTTP請求並且在經過一些初步處理后將請求傳遞到Kestrel服務器。
出於安全性的理由,反向代理常常被edge deployments所采用。因為Kestrel相對較新,對抵御安全攻擊至今還沒有一個完整的功能補充。安全性處理包括但不限於適當的超時,大小的限制,以及並發連接限制等問題。
另一個需要反向代理的場景是,你有多個需要在單獨的服務器上運行並分享同一端口的應用。因為Kestrel不支持在多進程間分享同一端口,所以應用並不能直接和Kestrel合作。當你在某個端口上配置Kestrel運行偵聽時,不算主機頭如何標識,Kestrel會為該端口處理所有的流量。反向代理可以為多個應用共享唯一端口並將流量發送給Kestrel。
即使不需要反向代理服務器,使用它也可以簡化負載均衡和SSL設置 -- 只要你的反向代理服務器需要SSL證書,並且該服務器可以和你的應用在內部網中通過普通HTTP進行通信。