hexo——輕量、簡易、高逼格的博客

背景

寫blog雖然經歷了N多不一樣時代的產品,恆久不變的始終是本身無人問津的網站。雖然沒幾我的看,仍是隔斷時間就要折騰一下。從最開始的wordpress,到tale,到如今的hexo,網站變得愈來愈簡單,愈來愈輕量級,這裏主要說說hexo的使用。html

hexo介紹

主頁: https://hexo.io/zh-cn/
主頁中有很是詳細的介紹,主頁中有介紹內容我這裏就不贅述了,這裏主要說說主頁中沒有詳細說明內容。前端

  • hexo 能夠理解爲是基於node.js製做的一個博客工具,不是咱們理解的一個開源的博客系統。其中的差異,有點意思。
  • hexo 正常來講,不須要部署到咱們的服務器上,咱們的服務器上保存的,實際上是基於在hexo經過markdown編寫的文章,而後hexo幫咱們生成靜態的html頁面,而後,將生成的html上傳到咱們的服務器。簡而言之:hexo是個靜態頁面生成、上傳的工具。

源碼結構

文件/文件夾 說明
_config.yml 配置文件
public 生成的靜態文件,這個目錄最終會發布到服務器
scaffolds 一些通用的markdown模板
source 編寫的markdown文件,_drafts草稿文件,_posts發佈的文章
themes 博客的模板

咱們正常使用,修改最多的源碼是_config.yml文件,無論是博客的基礎配置,仍是模板,都是修改這個文件。
source是咱們平常寫文章要用的目錄,是咱們平常操做的文件夾。
若是針對下載的模板修改,那麼就須要操做themes了。hexo是用node.js編寫的程序,因此theme的修改也是比較容易的。node

使用

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

編寫BLOG

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

hexo new [layout] <title>

其實,你能夠直接在_drafts新建markdown文件,就是草稿了,在_posts新建markdown文件,就是發佈的文章了。固然,記得在頂部加上相關的描述,如:github

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

效果和命令新建文件,是同樣同樣的。shell

模板安裝和使用

hexo爲咱們提供了很是多好看實用的模板,官網提供了不少模板,可是,針對模板的使用,只進行了很是簡單的說明,這裏以我本身的使用的模板Concise爲例,進行詳細的補充。npm

其實,模板的使用,簡單來講,只須要兩個步驟:服務器

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

全部的模板,共有的操做方式就只有這兩個,可是不一樣的模板,會有不少不一樣的設置,這裏就須要針對模板的使用說明進行修改了。建議經過github找到模板,看下readme。如,我使用的Concise就須要修改:markdown

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: git@github.com: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

相關文章
相關標籤/搜索