文章來自 辣雞熊個人博客:https://eeeje.com 歡迎訪問,獲得更好閱讀體驗。
背景
幾天前就看到服務器要到期了,沒去管他,結果給忘了,今天凌晨過期了,這台阿里雲華東2(上海)的機器也用了快2年了,物理位置在上海讓我這個強迫症很不舒服,而且40G的盤都用了30G了(反正就是給自己各種不嫌麻煩的借口),看到新出的學生機有可以購買在華東1(杭州)就果斷釋放了原來的服務器,新購於杭州節點
之前用寶塔做了備份策略,所以數據都儲存在我的OSS里面
前幾天用hexo在github上發布了博客,但是只能在我自己的電腦上進行編譯,有一些局限,所以先在這台服務器上安裝hexo用來在雲端編譯博客。
順便發現了個BUG,阿里雲學生機在認證期限內,好像可以不限次數的續費,我准備存點生活費續他個十年八年的試試。
廢話不多說
發布的時候發現博客園的Markdown預格式化文本真的很煩,有些代碼直接顯示文本了
安裝
連接服務器
管你cmd、xshell、hyper、putty還是什么的,連的上就完事
安裝node.js
這是個JavaScript運行環境
這一步建議在特定目錄下操作
沒有linux基礎請跟我做
mkdir /soft
mkdir /soft/hexo
cd /soft/hexo
- 從官網下載linux版本的node.js 或者直接采用wget方式下載
這里使用wget下載
wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz
-
把他解壓了
tar xf node-v10.9.0-linux-x64.tar.xz
-
解壓以后測試是否安裝成功
移動到目錄
cd node-v10.9.0-linux-x64/
執行命令
./bin/node -v // 如果出現版本號,說明安裝成功
修改node-v10.9.0-linux-x64文件夾名字為nodejs
cd ..
mv node-v10.9.0-linux-x64 nodejs
-
設置軟連接
ln -s /soft/hexo/nodejs/bin/node /usr/local/bin/node
ln -s /soft/hexo/nodejs/bin/npm /usr/local/bin/npm
git安裝
-
安裝依賴包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
通過命令 git --version 可以看到,Git 當前的版本號為 1.8.3.1,太過於陳舊,所以需要先把它移除了。
-
卸載舊版本的 Git
yum remove git
然后移動到/usr/local/
cd /usr/local/
-
下載並解壓
wget https://github.com/git/git/archive/v2.9.2.tar.gz
tar -zxvf v2.9.2.tar.gz // 解壓
mv git-2.9.2 git //重命名 -
編譯安裝
cd git // 進入文件夾
make prefix=/usr/local/git all // 編譯源碼
make prefix=/usr/local/git install // 安裝至 /usr/local/git 路徑
編譯時,由機器配置決定速度,請耐心等待。
-
打開環境變量配置文件
vim /etc/profile
在文件底部添加以下配置。
PATH=$PATH:/usr/local/git/bin // git 的目錄
export PATH
兩個語句都要加上
刷新環境變量
source /etc/profile
最后再使用 git --version 查看版本號,已經為 2.9.2
安裝hexo
npm install hexo-cli -g
搭建博客基礎
-
先把hexo命令添加到全局:hexo在nodejs的lib/node_modules/hexo-cli/bin 可以找到hexo命令方式是采用軟連接
ln -s /soft/hexo/nodejs/lib/node_modules/hexo-cli/bin/hexo /usr/local/bin/hexo
-
部署hexo博客環境:這個可以放在nodejs外面,方便打開
cd 到和nodejs一個目錄下(我是放在根目錄下的)然后:mkdir hexo
cd hexo
hexo init //會自動把資源文件下載好
解釋一下
node_modules:是依賴包
public:存放的是生成的頁面
scaffolds:命令生成文章等的模板
source:用命令創建的各種文章
themes:主題
_config.yml:整個博客的配置
db.json:source解析所得到的
package.json:項目所需模塊項目的配置信息
- 搭橋到github
創建一個repo,名稱為yourname.github.io, 其中yourname是github名稱(我已經有了,就不截圖了)
下面的每一步,要把yourname換為自己的github名字,youremail換為自己的github郵箱
配置github賬戶信息
git config --global user.name "yourname"
git config --global user.email "youremail"
創建SSH
輸入:ssh-keygen -t rsa -C "youremail",生成ssh
下面提示地方一路回車就可以
然后去找生成的sshkey
cd ~/.ssh
cat id_rsa.pub
把回顯的那些字符復制出來
在github的setting中找到SSH and GPG keys,點擊 New SSH key
title隨便取,key就填剛剛那一段ssh
在gitbash中驗證是否添加成功:ssh -T git@github.com
- 一步之遙
用編輯器打開你的blog項目,修改_config.yml文件的一些配置(冒號之后都是有一個半角空格的)注意YourgithubName改為你的
deploy:
type: git
repo: https://github.com/YourgithubName/YourgithubName.github.io.git
branch: master
這樣子需要每次都輸入密碼,如果不想每次輸入密碼的話把https://github.com/YourgithubName/YourgithubName.github.io.git改為git@github.com:YourgithubName/YourgithubName.github.io.git
回到gitbash中,進入你的blog目錄,分別執行以下命令
hexo clean
hexo server
-
啟動測試環境
hexo s
輸入 yourip:4000/即可訪問頁面
如果是服務器,我的是阿里雲服務器,需要配置安全組打開4000端口,這樣就可以訪問了
或者linux虛擬機,需要測試內外能否正常通信
每次編輯好都執行下面的命令進行上傳
hexo clean
hexo g //編譯
hexo d //上傳
這樣,基本的hexo環境就搭建好了。
