為了將自己的博客搭建到GitHub,特地學習了一下hexo。hexo 是一個快速、簡潔且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在幾秒內,即可利用靚麗的主題生成靜態網頁,相比jekyll生成靜態網頁的速度更快。
本人博客地址:blog.scorpiodeng.me/
亮點
Hexo 是一個簡單地、輕量地、基于Node的一個靜態博客框架。通過Hexo我們可以快速創建自己的博客,僅需要幾條命令就可以完成。
發布時,Hexo可以部署在自己的Node服務器上面,也可以部署github上面。對于個人用戶來說,部署在github上好處頗多,不僅可以省去服務器的成本,還可以減少各種系統運維的麻煩事(系統管理、備份、網絡)。所以,基于github的個人站點,正在開始流行起來…
Hexo的官方網站:http://hexo.io/,也是基于Github構建的網站。
廢話不多說,直接上干貨!
Hexo安裝
系統環境:
- win7 64bit
- node v0.10.5
- npm 1.2.19
Hexo安裝,要用全局安裝,加-g參數。
$ npm install -g hexo-cli
查看hexo的版本
本地部署Hexo
新建一個存放博客目錄的文件夾,例如:blog
進入到blog文件夾 hexo init blog 然后 npm install,博客安裝完畢
hexo s 啟動博客
打開瀏覽器http://127.0.0.1:4000/即可訪問
出現了默認的網頁界面,是不是很容易呢!
主題
個人覺得 Next主題NexT 是目前最清爽,集成度最好的一個,NexT主題是我接觸Hexo的第一款主題,一見鐘情的一款Hexo主題。
雖然NexT主題簡約卻并不簡單,功能特性多樣;響應式設計,電腦手機訪問體驗好,超級nice!
如果結合你自己網站的實際增刪改其中一些細節,那更加prefect了。
NexT相關教程:http://theme-next.iissnan.com/
Hexo的使用
創建新文章
我們開始新博客了,創建第一博客文章。Hexo建議通過命令行操作,當然你也可以直接在_posts目錄下創建文件。
通過命令創建新文章
$ hexo new 【搭建Hexo博客】簡明教程
INFO ?Created: D:\blog\source\_posts\【搭建Hexo博客】簡明教程.md
在_posts目錄下,就會生成文件:
關于markdown語法寫文章可以自行到網上搜索,這里就不想詳細介紹了。
發布項目到github
靜態化處理
寫完了文章,我們就可以發布了。要說明的一點是hexo的靜態博客框架,那什么是靜態博客呢?靜態博客,是只包含html, javascript, css文件的網站,沒有動態的腳本。雖然我們是用Node進行的開發,但博客的發布后就與Node無關了。在發布之前,我們要通過一條命令,把所有的文章都做靜態化處理,就是生成對應的html, javascript, css,使得所有的文章都是由靜態文件組成的。
靜態化命令
在本地目錄下,會生成一個public的目錄,里面包括了所有靜態化的文件。
發布到github
接下來,我們把這個博客發布到github。
在github中創建一個項目nodejs-hexo,項目地址:https://github.com/scorpiodeng/nodejs-hexo.git
如何將你的github倉庫部署到github pages
http://http://blog.csdn.net/CherishLyf/article/details/48681545
設置域名
接下來,我們配置好域名,這個路徑就會正確的。比如,我有一個域名是 scorpiodeng.me,為了中國DNS解析,我先把域名綁定在Dnspod管理,再做跳轉。
域名有兩種配置方式:
主域名綁定:直接綁定主域名XXX.me
子域名綁定:綁定子域名blog.XXX.me
主域名綁定
在dnspod控制臺,設置主機記錄@,類型A,到IP 192.30.252.153。
在github項目中,新建一個文件CNAME,文件中寫出你要綁定的域名,通過瀏覽器,訪問http://XXX.me,就打開了我們建好的博客站點。
子域名綁定
有時候,我們的主域名正在使用著,需要先新建一個博客綁定到子域名。
在dnspod控制臺,我們要做3步設置。
設置主機記錄github,類型A,到IP 199.27.76.133
設置主機記錄XXX.github.io,類型CNAME,到github.XXX.me.
設置主機記錄blog,類型CNAME,到 XXX.github.io
由于每次執行發布的時候,gh-pages分支所有的文件都會被覆蓋,所以我們最好在source目錄下創建這個CNAME文件,這樣每次部署就不用動手創建了。