天天看點

hexo——輕量、簡易、高逼格的部落格

背景

寫blog雖然經曆了N多不同時代的産品,恒久不變的始終是自己無人問津的網站。雖然沒幾個人看,還是隔斷時間就要折騰一下。從最開始的wordpress,到tale,到現在的hexo,網站變得越來越簡單,越來越輕量級,這裡主要說說hexo的使用。

hexo介紹

首頁:

https://hexo.io/zh-cn/

首頁中有非常詳細的介紹,首頁中有介紹内容我這裡就不贅述了,這裡主要說說首頁中沒有詳細說明内容。

  • hexo 可以了解為是基于node.js制作的一個部落格工具,不是我們了解的一個開源的部落格系統。其中的差别,有點意思。
  • hexo 正常來說,不需要部署到我們的伺服器上,我們的伺服器上儲存的,其實是基于在hexo通過markdown編寫的文章,然後hexo幫我們生成靜态的html頁面,然後,将生成的html上傳到我們的伺服器。簡而言之:hexo是個靜态頁面生成、上傳的工具。

源碼結構

hexo——輕量、簡易、高逼格的部落格

image

檔案/檔案夾 說明
_config.yml 配置檔案
public 生成的靜态檔案,這個目錄最終會釋出到伺服器
scaffolds 一些通用的markdown模闆
source 編寫的markdown檔案,_drafts草稿檔案,_posts釋出的文章
themes 部落格的模闆

我們正常使用,修改最多的源碼是_config.yml檔案,不管是部落格的基礎配置,還是模闆,都是修改這個檔案。

source是我們日常寫文章要用的目錄,是我們日常操作的檔案夾。

如果針對下載下傳的模闆修改,那麼就需要操作themes了。hexo是用node.js編寫的程式,是以theme的修改也是比較容易的。

使用

基本安裝和使用直接參考官網即可,這裡我主要說兩個部分:

編寫BLOG

官方新編寫BLOG,建議的是使用指令:

hexo new [layout] <title>
           

其實,你可以直接在_drafts建立markdown檔案,就是草稿了,在_posts建立markdown檔案,就是釋出的文章了。當然,記得在頂部加上相關的描述,如:

---
title: hexo——輕量、簡易、高逼格的部落格
date: 2018-08-31 17:54:54
tags:
    - IT技術
    - 前端
---
           

效果和指令建立檔案,是一樣一樣的。

模闆安裝和使用

hexo為我們提供了非常多好看實用的模闆,官網提供了很多模闆,但是,針對模闆的使用,隻進行了非常簡單的說明,這裡以我自己的使用的模闆Concise為例,進行詳細的補充。

hexo——輕量、簡易、高逼格的部落格

其實,模闆的使用,簡單來說,隻需要兩個步驟:

  • 将模闆copy到themes目錄,如:
git clone https://github.com/HmyBmny/hexo-theme-concise.git themes/concise 
           
  • 修改_config.yml中的theme:
theme: concise
           

所有的模闆,共有的操作方式就隻有這兩個,但是不同的模闆,會有很多不同的設定,這裡就需要針對模闆的使用說明進行修改了。建議通過github找到模闆,看下readme。如,我使用的Concise就需要修改:

author: 
  name: 公衆号:itmifen
  work: IT狗,程式猿,苦B奮鬥的僞文中老年
  location: 深圳, shenzhen
  avatar_url: http://oe749te3z.bkt.clouddn.com/logo.png

links:
  github: https://github.com/itmifen
           

基本上,這樣就能在本機進行預覽使用了。

釋出

現在比較流行的方式,都是将代碼釋出到git,因為我同時要傳到github和自己的部落格,所有我的處理方式就是:

先将代碼傳到github,再在自己的伺服器擷取github代碼,伺服器上自己部署一個nginx,解析靜态網頁即可。

先安裝git插件:

npm install hexo-deployer-git --save
           

git的配置,修改_config.yml檔案:

deploy:
  - type: git
    repository: [email protected]:itmifen/blog.git
    branch: master
           

當然,隻是這樣肯定不行,你要確定你本地能git push到服務端,是以需要配置本地的ssh github私鑰。沒有操作過的同學,請自行搜尋。 這樣,我就可以将本地的文章通過hexo官方推薦的方式push到github:

hexo deploy
           

這樣應該就能在你的github上看到上傳的代碼了,這時看到的應該是純靜态的一個站點。

既然代碼已經上傳了,那麼隻要在我的伺服器配置好github和ssh私鑰,就能順利的pull代碼了,當然,還需要寫個crontab定時來拉取,不需要自己登入伺服器操作了。

常見問題

執行deploy指令了,但是代碼未上傳?

先執行hexo generate指令,生成靜态檔案了,再執行hexo deploy上傳,上傳是隻會上傳public中生成的檔案。

修改了模闆,但是沒有生效?

修改了模闆以後不生效,建議先hexo clean,然後再hexo generate。隻執行hexo generate,可能模闆後者靜态檔案不會被替換。

預覽不太友善?

開發環境提供了實時預覽的方式,不需要每次都generate,執行指令:

hexo generate -w
           

系統會實時生成新的HTML,非常友善。

歡迎訂閱我的公衆号:ITmifen

hexo——輕量、簡易、高逼格的部落格

繼續閱讀