前言
之前在伺服器用WordPoress,Eblog程式搭建過個人部落格,因為平時也不寫什麼,導緻伺服器過期也沒續費。
這次我又續費了3年的阿裡雲學生機,續費後第一個想到的就是重新搭建一個自己的部落格,考慮到學生機隻有
1M的帶寬,我特意上網查了下靜态的部落格程式,最後選擇了Hexo來部署我的部落格,域名ali6.cn是早期買的。
部署總覽
個人使用的環境
本地環境: Windows10(64位)
雲主機:阿裡雲ECS(CentOS 7.3 64位)
整個部署過程
本地環境搭建(Git,NodeJs,Hexo)
雲主機環境搭建(Git,Nginx)
使用git自動化部署部落格
開始部署
本地Win10搭建環境
在Win10桌面右擊,點選Git Bash Here打開指令行終端,執行如下指令(直接按三次回車生成密鑰)
ssh-keygen -t rsa
生成的檔案預設在~/.ssh目錄中,看到有id_rsa,id_rsa.pub這些檔案即可,
Win10中就是 我的電腦/C槽/使用者/你自己的使用者名/.shh/ 就可以看到了
阿裡雲Centos搭建環境
安裝git
yum install git
建立Git賬戶
添加賬戶權限
阿裡雲Centos配置Nginx
為了适合小白安裝部署和後期網站伺服器的擴充性,選用寶塔面闆來一鍵部署Nginx
Linux面闆6.0安裝指令(暫時僅相容Centos7.x,其它系統版本請安裝5.9穩定版):
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
Linux面闆6.0更新專業版
curl http://download.bt.cn/install/update6.sh|bash
安裝完成後會顯示面闆背景位址·賬号·密碼。打開面闆背景位址登陸面闆,選擇Nginx的部署方案,靜靜等待部署。
部署完成,點選網站-添加站點-輸入域名(沒有域名的輸入自己的IP位址)-底部的PHP版本選擇”純靜态”(其他不改
或者根據自己的習慣來改)-送出。
網站建立完成後點選設定-配置檔案
server
{
listen 80;
# server_name 填寫自己的域名
server_name ali6.cn blog.ali6.cn;
index index.php index.html index.htm default.php default.htm default.html;
# 這裡root填寫自己的網站根目錄,修改為/var/www/hexo
root /var/www/hexo;
-儲存
點選設定-網站目錄,修改為/var/www/hexo ,儲存
重新開機寶塔面闆服務
service bt restart
本地win10安裝部署Hexo
我部署在D:/blog 中,你根據自己的習慣定義部署位置,不建議C槽,避免系統損壞後導緻檔案丢失。
打開D盤,建立blog檔案夾,打開blog檔案夾,按住Shift鍵右擊滑鼠,點選”在此處打開CMD視窗”。
執行如下指令
npm install hexo-cli -g
hexo init
npm install hexo server
npm install hexo-deployer-git --save
#定義郵箱(更換為你的郵箱位址就行)
git config --global user.email "[email protected]"
#定義名稱(更換自定義一個名稱就行)
git config --global user.name "Your Name"
配置_config.yml,完成自動化部署
打開D盤,blog檔案夾,打開blog檔案夾,打開_config.yml, 找到deploy
deploy:
type: git
#server改為你的服務IP位址或解析後的域名
#例如我改為repo: [email protected]:/var/repo/blog.git
repo: git@server:/var/repo/blog.git
branch: master
儲存後,即可測試部署
打開D盤,blog檔案夾,按住Shift鍵右擊滑鼠,點選”在此處打開CMD視窗”
hexo clean
hexo g -d
不出錯顯綠說明完成,打開浏覽器輸入你的域名或ip位址就可以看到你部署的Hexo部落格了。
至此,我們已經成功部完成,并且通路自己的伺服器端比通路github快多了,國外速度也是很好。
常見問題
我在部署過程中,執行 hexo d發現部署老是出錯,什麼權限不允許之類的,這裡我們需要檢查我們在上述的git操作部署是否使用了git使用者操作,若是沒有,需要給相應的目錄更改使用者組
使用
chown -R git:git /var/repo/
這條指令遞歸的将repo目錄及其子目錄使用者組設定為git。
同時使用
chown -R git:git /var/www/hexo
這樣即可解決此類問題
原文:
https://www.jianshu.com/p/0f9dfa9c141b