雖然Mono早在好幾年前已經很成熟,而且相容度亦滿足一般使用,但始終不是官方支持,商業上實在很難說服團隊使用。
現在周圍的人都在應用Azure/AWS,甚至是Docker技術把虛擬機和程式封裝運作,ASP.NET MVC/Webforms只能在IIS上執行的確是很尷尬的局面。
Microsoft此舉絕對是明智決定,由一直面對著主流的PHP,Java/Spring,到近年在Start-up廣泛使用的Ruby on Rails或Python/Django,都是Cross-platform的。
所以DotNET Core的出現使ASP.NET不再邊緣化,終於名正言順在Linux/Mac上運行了。
我都來湊下熱鬧,嘗試設置一下DotNET Ready的Linux平台,過程中固然不會一直都順利,自己都是LINUX外行人,我使用CentOS的時候已經是大約6年前的CentOS 5,很多Command都忘記了。
所以我就把每一步Command的輸出,和自己遭遇到的問題解決辦法都寫下來,給自己和大家參考一下。
事前準備
我所採用的軟件版本如下:
- CentOS Linux release 7.3.1611 (Core) 64Bit
- Apache 2.4.6 (httpd.x86_64 0:2.4.6-45.el7.centos.4)
- .NET Core 1.0.4
有幾個官方連結會用上的:
- CentOS Linux release 7.3.1611 (Core) 64Bit
- Set up a hosting environment for ASP.NET Core on Linux with Apache, and deploy to it
- .NET Core command-line interface (CLI) tools
頭兩個是必須的,第三個頁面讓你了解一下Linux下的DotNET CLI工作的命令。
首先我們依照第一個頁面的指示先把DotNET Core核心檔案安裝至Linux。
頁面上沒有提的事,就是我們安裝CentOS後,有兩件事我認為要做的。
1. 做一次系統軟件更新
2. 安裝VNC Server,畢竟我是來自Windows世界,有GUI操作資料夾或檔案,用GUI文字編輯軟件(GEdit)去編輯Apache Config檔會更容易,沒必要扮Geek用vi Editor吧...
Yum Update
***請確認是使用Root權限作SSH連線***
#確認CentOS版本 [root@localhost ~]# cat /etc/centos-release #> CentOS Linux release 7.3.1611 (Core) #更新一次系統軟件 [root@localhost ~]# yum update #完成後,重啟系統 [root@localhost ~]# reboot
安裝VNC Server
#確認沒有安裝過VNCServer [root@localhost ~]# which vncserver #***Output***: #> /usr/bin/which: no vncserver in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin) #安裝Gnome Desktop [root@localhost ~]# yum groupinstall "GNOME Desktop" #完成後,安裝VNCServer [root@localhost ~]# yum install tigervnc-server #執行以下指令,檢查是否安裝完成 [root@localhost ~]# rpm -qa | grep tigervnc-server #***Output***: #> tigervnc-server-1.3.1-9.el7.x86_64 #> tigervnc-server-minimal-1.3.1-9.el7.x86_64



