從搭建到成功以及本文的誕生片酝,前后花了兩天時(shí)間囚衔,真是一把辛酸淚,感覺還是挺費(fèi)事的雕沿,中途一度想放棄练湿,可還是咬牙堅(jiān)持下來(lái)了,但看到結(jié)果后感覺一切的辛苦都是值得的审轮。過(guò)程中一定要有耐心肥哎,畢竟需要用到的東西挺多的,比如:node.js疾渣、git篡诽、 github、hexo其中的知識(shí)榴捡。廢話不多說(shuō)了杈女,詳情如下:
一、系統(tǒng)環(huán)境配置:
要想利用Hexo吊圾、GitHub搭建個(gè)人博客达椰,首先要安裝Node.js、git:
1项乒、Node.js安裝:
或者通過(guò)如下命令安裝:
brew install node #最新版的node.js的包中已經(jīng)集成了npm包管理工具
通過(guò)如下命令查看是否安裝成功:
node -v
npm -v
2啰劲、Git安裝及配置:
或者通過(guò)如下命令安裝:
brew install git #Mac電腦使用brew安裝
sudo apt-get install git #Ubuntu系統(tǒng)使用這條命令安裝
配置詳見另外一篇博客: git安裝與配置
3、Hexo安裝:
$ npm install hexo -g #-g表示全局安裝, npm默認(rèn)為當(dāng)前項(xiàng)目安裝
如遇錯(cuò)誤檀何,請(qǐng)使用一下安裝:
$ npm install hexo --no-optional
驗(yàn)證是否成功安裝:
$ hexo -v
目前我用到的環(huán)境如下 蝇裤,出現(xiàn)類似如下環(huán)境說(shuō)明hexo安裝成功
hexo-cli: 1.0.2
os: Darwin 16.4.0 darwin x64
http_parser: 2.7.0
node: 6.10.0
v8: 5.1.281.93
uv: 1.9.1
zlib: 1.2.8
ares: 1.10.1-DEV
icu: 58.2
modules: 48
openssl: 1.0.2k
創(chuàng)建博客的根目錄并切換到更目錄下:
$ mkdir myblog
$ cd myblog
初始化myblog文件夾使其成為Hexo博客:
$ hexo init
自動(dòng)根據(jù)當(dāng)前目錄下文件,生成靜態(tài)網(wǎng)頁(yè):
$ hexo generate
運(yùn)行本地服務(wù):
$ hexo server
有必要提下Hexo常用的幾個(gè)命令:
$ hexo new "postName" #新建文章
$ hexo new page "pageName" #新建頁(yè)面
$ hexo generate (或者h(yuǎn)exo g) 生成靜態(tài)文件,會(huì)在當(dāng)前目錄下生成一個(gè)新的叫做public的文件夾
$ hexo server (或者h(yuǎn)exo s) 啟動(dòng)本地web服務(wù)频鉴,用于博客的預(yù)覽
$ hexo deploy (或者h(yuǎn)exo d) 部署播客到遠(yuǎn)端(比如github, coding等平臺(tái))
常用簡(jiǎn)寫:
$ hexo n == hexo new
$ hexo g == hexo generate
$ hexo s == hexo server
$ hexo d == hexo deploy
常用組合:
$ hexo d -g #生成部署
$ hexo s -g #生成預(yù)覽
通過(guò)hexo g生成靜態(tài)文件和hexo s啟動(dòng)本地web服務(wù)后猖辫,現(xiàn)在我們打開http://localhost:4000/ 就可以看到一篇內(nèi)置的blog了⊙獾睿看到后是不是感覺很有成就感啃憎?反正我是這么認(rèn)為的。
二似炎、Hexo主題設(shè)置
默認(rèn)的主題是landscape辛萍,這里以主題yilia為例進(jìn)行說(shuō)明。Hexo中文官網(wǎng):下載主題羡藐、配置詳解
安裝主題
$ hexo clean
$ git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia
修改主題
修改myblog目錄下的_config.yml配置文件中的theme屬性贩毕,將其設(shè)置為yilia。
并按照主題說(shuō)明進(jìn)行相關(guān)的配置仆嗦,這點(diǎn)很重要辉阶,否則修改后的主題樣式會(huì)有變化
例如:git clone https://github.com/GeekaholicLin/hexo-theme-ylion.git這個(gè)主題
就需要在_config.yml配置文件添加如下內(nèi)容:
### search插件基于 https://github.com/PaicHyperionDev/hexo-generator-search
### 使用說(shuō)明請(qǐng)參考該repo
search:
path: search.xml
field: all
更新主題
$ hexo g # 生成
$ hexo s # 啟動(dòng)本地web服務(wù)器
三、GitHub Pages配置
1、注冊(cè)谆甜、登錄GitHub
github官網(wǎng):https://github.com/
2垃僚、創(chuàng)建項(xiàng)目倉(cāng)庫(kù)
注冊(cè)并登陸Github官網(wǎng)成功后,點(diǎn)擊頁(yè)面右上角的+规辱,選擇New repository谆棺。
3、填寫項(xiàng)目名
在Repository name中填寫:Github賬號(hào)名.github.io 必須這樣填罕袋,否則會(huì)出錯(cuò) 例如我的賬號(hào)為:allen,那么就必須填allen.github.io
4改淑、設(shè)置GitHub pages
打開settings,有一個(gè)Github Pages 的設(shè)置浴讯,點(diǎn)擊 source 中的本來(lái)的 None 朵夏,使其變成 master 分支,也就是作為部署github pages 的分支榆纽,然后點(diǎn)擊 save仰猖。
5、查看網(wǎng)址
頁(yè)面刷新之后掠河,再看 github pages 設(shè)置框處亮元,多了一行網(wǎng)址猛计,就是你的 github pages 的網(wǎng)址了唠摹,點(diǎn)擊進(jìn)去就進(jìn)入屬于你自己的博客網(wǎng)址了。
四奉瘤、部署到GitHub pages
1勾拉、修改_config.yml
千萬(wàn)要注意冒號(hào):后邊要留有空格
基本設(shè)置
# Site
title: allen #標(biāo)題
subtitle: welcome to allen blog #副標(biāo)題
description: #描述
author: John Doe #作者
language: zh-CN #語(yǔ)言
timezone: #時(shí)區(qū)
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://suxianglun.github.io #用于綁定域名, 其他的不需要配置,即為GitHub pages生成的那個(gè)網(wǎng)址
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: hexo-theme-landfarz #主題設(shè)置
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy: #部署, 發(fā)布在 GitHub 上面
type: git
repo: git@github.com:suxianglun/suxianglun.github.io.git #GitHub 項(xiàng)目倉(cāng)庫(kù)
branch: master
2盗温、部署到GitHub 上
$ hexo clean #清除
$ hexo g #生成
$ hexo d #部署 # 可與hexo g合并為 hexo d -g
$ hexo d 之后如果出現(xiàn)ERROR Deployer not found: Git,請(qǐng)鍵入如下命令
$ npm install hexo-deployer-git --save
部署之后去查看GitHub pages那個(gè)網(wǎng)址http://suxianglun.github.io藕赞,有可能會(huì)出現(xiàn):
Your site is having problems building: unable to build page. Please try again later. 或者
Your page is having problems building: page build failed
同時(shí)也會(huì)收到github發(fā)來(lái)的page build failure的郵件,但是郵件中顯示的錯(cuò)誤信息和settings頁(yè)面上的一樣, 就這句話, 什么都沒有, 沒有任何錯(cuò)誤提示.我就卡在這一天卖局,后來(lái)用了好長(zhǎng)時(shí)間來(lái)解決了斧蜕。我分析的主要原因如下:
1、Hexo未進(jìn)行構(gòu)建html,即未執(zhí)行hexo g,這個(gè)過(guò)程需要一段時(shí)間砚偶,構(gòu)建好html后myblog根目錄下完整目錄應(yīng)該如下:
README.md db.json package.json scaffolds themes
_config.yml node_modules public source
2批销、Hexo 配置不正確,請(qǐng)嚴(yán)格按照要求進(jìn)行配置
另外說(shuō)一下我的個(gè)人博客地址 https://suxianglun.github.io/ 歡迎來(lái)騷擾染坯。