記錄一下Nginx在CentOS8上安裝,Nginx釋出多個站點,以及dotnetCore在CentOS8上安裝 和 部署asp.net core應用程式
- 為什麼要記錄?
-
- 01 CentOs 上安裝 Nginx
- 02 編輯 nginx.conf 配置多站點
- 03 安裝 dotnet core
- 04 上傳釋出的程式,運作托管
- 如果有人看請不要共計我的小伺服器
- 傳回:enabled 表示也開啟,disabled 表示已禁用
為什麼要記錄?
為了避免每次操作都忘記了,又要重新去搜搜
目前所有操作使用的是root使用者,(超級管理者)權限
網絡上都有,隻是再照着寫一遍而已
01 CentOs 上安裝 Nginx
安裝步驟
- 添加Nginx到YUM源
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
- 安裝Nginx
yum install -y nginx
- 啟動服務
systemctl start nginx.service
- 一下是成功安裝圖:
- 路徑以及需要修改的檔案如下圖:
- 後續操作我都是在紅色 nginx.conf裡操作。其中要說的是對于Nginx,可以有很多種操作。先從了解開始!綠色是自己備份的檔案
mv nginx.conf nginx.conf.bak
Nginx下centos各種版本
學習于,感謝作者
02 編輯 nginx.conf 配置多站點
vim nginx.conf
添加以上紅色區域的2個站點;(這幾個小域名莫攻擊哦,伺服器很很垃圾的)
03 安裝 dotnet core
可以進入微軟文檔學習一波
宿主安裝的是SDK版本,一般伺服器上隻跑編譯好的程式隻需安裝
運作時
的版本就會
sudo dnf install dotnet-sdk-3.1
運作指令
dotnet --version
能顯示上面的資訊就說明可以了。一般不會出錯,我要是碰到出錯,就重置系統 ………_
04 上傳釋出的程式,運作托管
- 宿主随便上傳了2個模闆。到
可以自己随便建個檔案夾放好啦,最好還是放到有規律的地方吧!!日後好檢視及維護/home/www/
- 先運作NotFindObj這個程式 運作
這個是用到程序保護吧,就可以直接将控制台關閉了如: ,不是nohup dotnet NotFindObj.dll
結束哦!!!!!!!!!!!!,如果用到Ctrl+c
這個運作程式,控制台一關閉,程式也終止了。dotnet NotFindObj.dll
到此就看在浏覽器進行域名通路了如下圖:
-
再運作Smbxfdbz這個程式
這裡由于 5000的本地端口被上個程式占用了,所有要這樣
``
這裡跟上面nohup dotnet Smbxfdbz.dll --urls="http://*:5005"
nginx.conf
裡的配置一緻;
,效果如下圖:
- 小結: 這樣的配置,重新開機電腦會沒有了。需要重新配置!!!!!!!
如果有人看請不要共計我的小伺服器
==============分割線=
有老哥說,
上面的問題,我了解是,他應該沒有把nginx 設定成系統自動啟動 。
其次是不會将 nohup 寫成服務形式,再設定開機啟動
下圖,為我之前配置的,今天重新開機了虛拟機,是沒有問題的。
注意:注意⬇的IP,此時沒有運作dotnet 網站
======================下面開始示範一遍吧
設定各種服務為開機啟動。 (基本操作說明)
使用 啟用
systemctl enable nginx
使用 禁用
systemctl disable nginx
推薦使用 指令
檢視服務是否為開機啟動狀态
chkconfig nginx
傳回:enabled 表示也開啟,disabled 表示已禁用
使用如下指令:表示關閉nginx 服務
chkconfig nginx off
使用如下指令:表示開啟nginx 服務
chkconfig nginx on
----------------------------下面為正式操作内容--------------------------------------------
-
進入我們的伺服器(這裡我用的是本地)
使用
輸入密碼進入自己的伺服器,注意:第一連結需要授權。ssh root @192.168.0.110
- 檢視服務
或netstart -ntlp
ss -ntlp
- 找到自己DotNet釋出的檔案夾并進入(可以先忽略我這裡的 nohup.out、startProNet.sh 這2檔案,😎這是我測試寫好的)記住自己的路徑哦
- 使用vim 在自己的項目檔案夾裡建立 startProNet.sh 檔案 (這個名字可以随意起,隻要自己知道就行),在檔案裡寫入,如下
#!/bin/bash
cd /var/www/html/publish/
nohup dotnet VueJSDotnet51.dll
上面的意思,我就不說了,這都看不懂就,照着寫吧✍ 😪
- 儲存退出,在 /etc/init.d/裡 vim出一個 startTest 檔案,(名字可以随便出,隻要自己記得),輸入一下内容
#!/bin/bash
# chkconfig: 3 88 88
/bin/bash /var/www/html/publish/startProNet.sh >/dev/null 2>/dev/null
上面的意思就不多說了,
6. 儲存退出後,使用
chmod +x /etc/init.d/startTest
進行授權 看得出這裡我已經操作過了😏
7. 添加到chkconfig,開機自啟動
chkconfig --add startTest
chkconfig --list startTest
8.重新開機
reboot
就能看到啦!!
--------------------- 晚完,下面是廢話----
疑惑1,使用
chkconfig ***
無法看到狀态,使用
systemctl status ***
才能看到狀态
疑惑2,好像不能多次操作 /etc/rc.d/init.d/***裡的同一檔案,不然就不生效了,上圖我的名字是‘startNet.server’,最開使用的startTest,操作了2遍,重新開機電腦就還是沒啟動,估計是:我使用 其他什麼指令, chkconfig startTest off ? 還是多執行了 chkconfig --add startTest一遍這個指令?不了了之
---------------------------------分享一下學習的連結吧,同時感謝各位作者
Linux配置開機自啟動執行腳本的兩種方法
linux開機啟動nohup java背景程序
nohup Execute Commands After You Exit From a Shell Prompt