使用Hexo+GitHub搭建免費我的博客

本文所使用的環境: Centos 6.5Final@64BitNodeJs@v8.11.1hexo@3.2.2

一、前言

使用github-pages服務搭建博客的好處有:html

  1. 全是靜態文件,訪問速度快;
  2. 免費方便,不用花一分錢就能夠搭建一個自由的我的博客,不須要服務器不須要後臺;
  3. 能夠隨意綁定本身的域名,不仔細看的話根本看不出來你的網站是基於github的;
  4. 數據絕對安全,基於github的版本管理,想恢復到哪一個歷史版本都行;
  5. 博客內容能夠輕鬆打包、轉移、發佈到其它平臺;
  6. 等等;

1.一、準備工做

  • 有一個github帳號,沒有的話去註冊一個
  • 安裝了node.jsnpm,並瞭解相關基礎知識
  • 傳送門 ➡️ Linux上安裝node和npm

二、搭建GitHub博客

2.一、建立倉庫

建一個名爲你的用戶名.github.io的倉庫,好比說,若是你的github用戶名是test,那麼你就新建test.github.io的倉庫(必須是你的用戶名,其它名稱無效),未來你的網站訪問地址就是 http://test.github.io了,是否是很方便?
幾個注意的地方:node

  • 註冊的郵箱必定要驗證,不然不會成功;
  • 倉庫名字必須是:username.github.io,其中username是你的用戶名;
  • 倉庫建立成功不會當即生效,須要過一段時間,大概3-10分鐘左右
  • 倉庫建立成功後須要開啓pages服務 settings ➡️ GitHub Pages ➡️ 選擇分支並開啓服務

2.二、綁定域名(看本身選擇是否使用)

綁定域名分2種狀況:帶www和不帶www的。
域名配置最多見有2種方式,CNAME和A記錄,CNAME填寫域名,A記錄填寫IP,因爲不帶www方式只能採用A記錄,因此必須先ping一下你的用戶名.github.io的IP,而後到你的域名DNS設置頁,將A記錄指向你ping出來的IP,將CNAME指向你的用戶名.github.io,這樣能夠保證不管是否添加www均可以訪問,以下:

而後到你的github項目根目錄新建一個名爲CNAME的文件(無後綴),裏面填寫你的域名,加不加www看你本身喜愛,由於經測試:

另外說一句,在你綁定了新域名以後,原來的你的用戶名.github.io並無失效,而是會自動跳轉到你的新域名。linux

三、使用hexo寫博客

3.一、安裝hexo

# npm install -g hexo-cli
# 作個軟連接
# cd /usr/local/bin
# 這是是你的Node解壓安裝的路徑
# ln -s /opt/node-v8.11.1-linux-x64/bin/hexo

3.二、初始化

在某個地方新建一個名爲hexo的文件夾git

# mkdir -p /workspaces/hexo
# cd /workspaces/hexo/
# hexo init

目錄結構以下圖:github

# hexo g # 生成
# hexo s # 啓動服務

打開瀏覽器訪問 http://IP:4000 便可看到內容 以下:npm

3.三、修改主題

# cd /workspaces/hexo/themes/
# yum install -y wget
# wget https://codeload.github.com/litten/hexo-theme-yilia/zip/master
# yum install -y unzip
# unzip master
# mv hexo-theme-yilia-master/ yilia
# ll

下載後的主題都在這裏:
vim

修改_config.yml中的theme: landscape改成theme: yilia,而後從新執行hexo g來從新生成。
若是出現一些莫名其妙的問題,能夠先執行hexo clean來清理一下public的內容,而後再來從新生成和發佈。
# yum install -y vim
# 修改_config.yml中的theme: landscape改成theme: yilia
# vim /workspaces/hexo/_config.yml
# 從新生成
# hexo g
# hexo s

3.四、上傳到GitHub

上傳public 文件夾裏全部的文件 ,能夠拷貝出來使用git上傳到GitHub

3.五、經常使用hexo命令

  • hexo new "postName" 新建文章
  • hexo new page "pageName" 新建頁面
  • hexo generate 生成靜態頁面至public目錄
  • hexo server 開啓預覽訪問端口(默認端口4000,'ctrl + c'關閉server)
  • hexo deploy 部署到GitHub
  • hexo help 查看幫助
  • hexo version 查看Hexo的版本
縮寫:
  • hexo n == hexo new
  • hexo g == hexo generate
  • hexo s == hexo server
  • hexo d == hexo deploy
組合命令:
  • hexo s -g 生成並本地預覽
  • hexo d -g 生成並上傳

3.六、_config.yml文件配置

須要特別注意的地方是,冒號後面必須有一個空格,不然可能會出問題。

3.七、寫博客

定位到咱們的hexo根目錄,執行命令:瀏覽器

# hexo new 'my-first-blog'
hexo會幫咱們在_posts下生成相關md文件:

咱們只須要打開這個文件就能夠開始寫博客了,默認生成以下內容:

固然你也能夠直接本身新建md文件,用這個命令的好處是幫咱們自動生成了時間。

通常完整格式以下:安全

---
title: postName #文章頁面上的顯示名稱,通常是中文
date: 2013-12-02 15:30:16 #文章生成時間,通常不改,固然也能夠任意修改
categories: 默認分類 #分類
tags: [tag1,tag2,tag3] #文章標籤,可空,多標籤請用格式,注意:後面有個空格
description: 附加一段文章摘要,字數最好在140字之內,會出如今meta的description裏面
---
如下是正文.....
推薦一個在線寫博客工具 ➡️ http://pandao.github.io/editor.md/
Tips:如何讓博文列表不顯示所有內容

默認狀況下,生成的博文目錄會顯示所有的文章內容,如何設置文章摘要的長度呢?bash

答案是在合適的位置加上

<!-- more -->

便可,例如:

# 前言

使用github pages服務搭建博客的好處有:

1. 全是靜態文件,訪問速度快;
2. 免費方便,不用花一分錢就能夠搭建一個自由的我的博客,不須要服務器不須要後臺;
3. 能夠隨意綁定本身的域名,不仔細看的話根本看不出來你的網站是基於github的;

<!--more-->

4. 數據絕對安全,基於github的版本管理,想恢復到哪一個歷史版本都行;
5. 博客內容能夠輕鬆打包、轉移、發佈到其它平臺;
6. 等等;

最終效果:

相關文章
相關標籤/搜索