Hexo + Github 搭建个人博客网站

  1. 搭建Hexo运行环境,安装Node.js
  2. 安装Hexo博客框架
  3. 安装代码上传工具Git
  4. [注册github账号] 登录github创建新项目
  5. 更换主题,上传项目到github

安装NodeJs

  1. 下载安装,官网:https://nodejs.org/en/

  2. 测试

    1
    2
    node -v //显示node.js版本
    npm -v //显示npm版本
  3. [修改全局路径和缓存路径]

    1
    2
    npm config set prefix "...\node_glbal"  //设置全局路径
    npm config set cache "...\node_cache" //设置缓存路径
  4. 配置环境变量

  5. [使用柜内镜像源]

    1
    npm config set registry=https://registry.npmmirror.com/  //使用淘宝镜像源

安装Hexo

  1. 安装测试:

    1
    2
    npm install -g hexo-cli  //安装
    hexo -v //显示hexo版本
  2. 创建和本地预览blog

    1
    2
    3
    4
    hexo init <folder>  //博客存放地址
    hexo cl //清除之前生产的静态文件,“cl”为“clean”缩写
    hexo g //生成静态文件,“g”为“generate”缩写
    hexo s //在本地服务器运行,“s”为“server”缩写
  3. 打开浏览器在地址栏中输入:https://localhost:4000/,即可本地预览。

  4. 更换主题

    1
    git clone <url> <folder>  //下载(url:主题地址,folder:存放路径)

    打开站点配置文件(Blog目录下的_config.yml),将theme内容换成下载的主题。

安装Git

  1. 下载安装,官网:https://git-scm.com/

  2. 配置用户信息

    1
    2
    git config --global user.name '用户名'
    git config --global user.email '邮箱地址'
  3. 创建SSH链接密钥

    1
    ssh-keygen -t rsa [-b 4096] -C "邮箱地址"

创建Github仓库

  1. [注册]登录创建博客仓库

  2. 为博客仓库添加密钥:复制上面创建好的密钥(在c:\\用户\ .ssh\)

  3. 复制生产的SSH链接,配置站点配置文件:

    1
    2
    3
    4
    deploy:
    type: git
    repo: 复制的SSH链接
    branch: master

发布博客

  1. 安装hexo-deployer-git插件

    1
    npm install hexo-deployer-git --save
  2. 进入站点根目录,部署hexo

    1
    hexo d  //部署到Github,“d”为“deployer”缩写
  3. 打开浏览器访问:https://项目名.github.io,搭建成功。

主题配置(Butterfly)

文章配置

1
2
3
4
5
6
7
---
title: {{title}}
date: {{date}}
top_img:
categories:
cover:
---

全部参数

关键字 描述
title* 文章标题
date* 文章创建日期
update 文章更新日期
tags 文章标签
categories 文章分类
keywords 文章关键字
description 文章描述
top_img 文章顶部图片
cover 文章略缩图(如果没有设置top_img,文章页顶部将显示略缩图,可设为false、图片地址和留空)
comments 显示文章评论模块(默认true)
toc 显示文章toc(默认为设置中toc的enable配置)
toc_number 显示toc_number(默认为设置中的toc的number配置)
toc_style_simple 显示toc简洁模式
copyright 显示文章版权模块(默认设置post_copyright的enable配置)
copyright_author 文章版权模块的文章作者
copyright_author_href 文章版权模块的文章作者链接
copyright_url 文章版权模块的文章连结链接
copyright_info 文章版权模块的版权文字
mathjax 显示mathjax(当设置mathjax的per_page: false时才需配置,默认为false)
katex 显示katex(当设置katex的per_page: false时才需配置,默认为false)
aplayer 在需要的页面加载aplayer的js和css
highlight_shrink 配置代码框是否展开(true/false)
aside 显示侧边栏(默认true)
abcjs 加载abcjs(当设置abcjs的per_page: false时,才需要配置,默认为false)

页面配置

1
2
3
4
5
---
title: {{title}}
date: {{date}}
type:
---

全部参数

关键字 描述
title* 页面标题
date* 页面创建日期
type* 标签、分类和友情链接三个页面需要的配置
update 页面更新日期
description 页面描述
keywords 页面关键字
comments 显示页面评论模块(默认true)
top_img 页面顶部图片
mathjax 显示mathjax(当设置mathjax的per_page: false时才需配置,默认为false)
katex 显示katex(当设置katex的per_page: false时才需配置,默认为false)
aside 显示侧边栏(默认true)
aplayer 在需要的页面加载aplayer的js和css
highlight_shrink 配置代码框是否展开(true/false)
random 配置友情链接是否随机排序(默认false)

创建页面和文章