[GCP]CentOS 7 安裝nginx ,執行Asp.net core

[

選擇用centos 7, 純粹是因為用6的時候,安裝問題實在很多

接著可以從外部開啟瀏覽器,輸入vm的ip位置,如看到nginx的服務畫面,表示已經安裝並啟動服務成功
若連不上,可在vm設定防火牆規則

安裝net core(官網教學)

如果主機只是要執行net core,但並沒有要在上面開發 可以只安裝dotnet-runtime,不用裝SDK(官網文件)

 

準備一個asp.net core專案
netcore和nginx都安裝完成後, 請在電腦上先建立好netcore專案,準備發佈到centos上。
建立方式可參考官網教學或Google。如果你使用visual studio 2017,在建立專案的地方就有ASP.NET core專案可以選擇.
還沒安裝visual studio 可以在微軟官網下載免費的社群版
下面主要介紹用命令列的方式來建立.NET Core專案
依照官網的描述, 主要需安裝下列三個項目
.NET Core 2.1 SDK 或更新版本
Visual Studio Code (編寫專案程式使用,如已經安裝visual studio 2017 則不須再安裝)
C# for Visual Studio Code(Visual Studio Code外掛, 用來撰寫c#程式碼)

三項皆安裝完成後,可透過.NET Core CLI (Command-Line Interface)來建立專案。開啟命令提示字元 ,切換到想要建立專案的目錄後
輸入 dotnet new xx(xx依據想建立的專案類型輸入)
官網指令文件
例如 :
dotnet new web 可建立空的NETcore專案
dotnet new mvc 可建立NETcore mvc範本的專案

這邊建立空的NETcore專案, 建立好的專案結構如下

專案建立完成後,先切換到專案的目錄下
用dotnet publish -c Release 指令去編譯專案
編譯完成的檔案會在專案資料夾下的bin/Release/netcoreapp版本號\publish

其他指令:
切換到publish資料夾下,執行dotnet 專案名稱.dll ,可測試專案是否能正常執行
如果出現noew listening on : http://locahhost:5000 表示成功

在centos主機上,建立目錄,準備放置net core專案

命令參考:
pwd 可顯示目前所在資料夾位置
cd /xxx 切換到xxx資料夾
ls 列出所在目錄下的所有資料夾

接著把剛剛建立並發佈的專案,從publish資料夾傳送到centos上準備好的hellomvc資料夾
可參考下面教學,用filezilla傳送檔案
用filezilla連線到centos主機的方法
教學1
教學2

檔案傳送好之後,設定nginx反向代理, 讓網站可透過外網連上
需要修改nginx的nginx.conf設定檔中的http區塊
nginx.conf檔的位置,依據你安裝nginx方式的不同,資料夾結構也會不一樣
如果不知道檔案位置,可執行sudo nginx -t 測試設定檔是否正確
畫面會顯示 nginx: the configuration file xxxxx is ok ,xxxxx就是設定檔的所在位置
我這邊顯示的位置是/etc/nginx/nginx.conf

也有其他文教學建議,每個站台獨立配置一個設定檔。將設定檔放在/etc/nginx/conf.d/專案名稱.conf
預設會讀取/etc/nginx/nginx.conf, 再來讀取conf.d下個站台的設定

關於作者

留言

By zomzad
聯繫本站: zomzad@gmail.com

TAG