{{ v.name }}
{{ v.cls }}類
{{ v.price }} ¥{{ v.price }}
說來也慚愧,博客已經(jīng)搭建很久了,一直免費的部署在 Coding 和 Github Pages 上,前者遷移到騰訊云 Serverless,導致原有的配置始終有問題,沒時間仔細研究,剛好騰訊服務(wù)器有羊毛可以褥,果斷作出遷移,至于選擇騰訊云,是因為當初備案在騰訊云,但是購買域名是在阿里,感覺好擰巴,但是整體互不相關(guān),沒啥影響。
環(huán)境 | |
---|---|
本地環(huán)境 | MacOS Monterey 12.0.1 |
服務(wù)器環(huán)境 | CentOS Linux release 8.2.2004 (Core) |
hexo 本地搭建過程網(wǎng)上太多了,這里不再贅述,這里只是做一點鏈接服務(wù)器的準備工作
生成 Git 密鑰
一路回車,這時你應(yīng)該可以在 ~/.ssh/ 目錄下看到兩個剛剛生成好的密鑰文件:
我們一會需要把公鑰的內(nèi)容拷貝到服務(wù)器上
服務(wù)器非常純凈,什么也沒有,所以我們要一點點安裝我們所需的內(nèi)容
強烈建議你重置騰訊云服務(wù)器的默認密碼, 再進行下面操作
Git 安裝和配置
切換到 root 用戶(輸入你剛剛重置的密碼就好)
首先需要安裝包的依賴
進入指定目錄(這里選擇 usr/local/src)選擇最新版本 Git (這里使用 2.34.1)下載并解壓
解壓出來的 Git 文件都是源文件,我們需要進行編譯,進入 Git 解壓目錄,進行編譯和安裝, 安裝位置(這里選擇 usr/local/git), 整個過程可能需要一定等待......
安裝好后,我們需要配置環(huán)境變量,打開環(huán)境變量配置文件:
在文件底部添加 Git 安裝目錄信息,給不熟悉 Vim 的同學快速操作步驟,按照下面依次按字母就可以了(這個保姆服務(wù)有沒有很到位)
G (光標快速到文件末尾)
o (添加新空白行并進入 Insert 模式)
粘貼下面內(nèi)容
Esc (進入 Normal 模式)
:wq(保存并退出)
刷新環(huán)境變量,使之生效
此時 Git 應(yīng)該已經(jīng)安裝完成,可以查看 Git 版本號是否和你指定的版本一樣:
Git 新用戶與配置
創(chuàng)建 git 用戶和密碼
將 git 用戶添加到 sudoers 文件中, 同樣給出 Vim 快捷操作
/## Allow
這樣可以快速定位到如下位置:
在下面一行添加 git 用戶內(nèi)容, 保存并退出
修改回 sudoers 文件權(quán)限
測試
將上面本地生成的 id_rsa.pub 公鑰內(nèi)容拷貝到遠端服務(wù)器, 這個命令會默認在遠端服務(wù)器 git 用戶主目錄下生成 authorized_keys 文件 (~/.ssh/authorized_keys), 其中 server_ip 為公網(wǎng) IP,不是內(nèi)部 IP,別拷貝錯了
此時可以通過 ssh 命令(加上 -v 命令,可以輸出詳細 log)測試連接,沒問題就可以進行下一步了
博客網(wǎng)站目錄配置
同樣切換到 root 目錄,然后為博客網(wǎng)站創(chuàng)建根目錄(這里選擇 /home/hexo)
賦予 git 用戶權(quán)限
指定目錄位置(這里選擇 git 用戶主目錄 /home/git)創(chuàng)建一個名為 blog.git 的 bare repo
什么是 bare repo,以及 bare repo 的一些高級使用,可以看下面這三篇文章,下面的一些細節(jié)只是不做過多介紹
一鍵生成Git Worktree 工作目錄
同樣賦予 git 用戶相應(yīng)權(quán)限
使用自動化配置,自然是要用到 Git 的鉤子函數(shù),這里我們需要 post-receive,在博客 hooks 目錄下新建該文件:
然后添加如下內(nèi)容(注意目錄匹配),保存并退出:
最后,賦予這個文件可執(zhí)行權(quán)限
接下來,創(chuàng)建個鏈接,以防后續(xù) deploy 過程出錯
至此,基本的準備工作就完成了,接下來我們需要處理 Nginx 的內(nèi)容
Nginx 安裝和配置
安裝
同樣切換到 root 用戶,然后安裝 nginx,并最終啟動
這時,在瀏覽器中輸入公網(wǎng) IP 地址,應(yīng)該可以看到 Nginx 默認的歡迎界面
配置
這里配置 Nginx,將所有 Http 請求都重定向為 Https 請求,這就需要我們有 SSL 證書,證書可以在云服務(wù)器上申請,并下載相應(yīng)的版本(這里選擇 Nginx 證書),下載后解壓,以我的證書為例:
通過 scp 命令將上述證書拷貝到遠端服務(wù)器, 正常應(yīng)該將 Nginx 的證書存放在 /etc/nginx/cert 目錄下,這里選擇存放在 /home/ssl_cert 下(如果目錄不存在,請自行創(chuàng)建)
然后打開 Nginx 的配置文件進行整體配置
通過 nginx -t 命令進行檢查,一切正常會輸出如下結(jié)果:
至此,所有的準備工作都做完了,接下來,我們需要做一些博客配置
我們需要將遠端服務(wù)器的 Git 倉庫信息配置到 Hexo 站點配置文件(_config.yml)中
陸續(xù)執(zhí)行 hexo 的命令進行部署
至此,距離成功,我們只差最后一步
登陸到你購買域名服務(wù)器(比如我在阿里云),配置域名解析,將其指向我們服務(wù)器的公網(wǎng)地址:
接下來,你可以在瀏覽器中輸入域名,進行驗證,享受你的成果吧!