共计 2116 个字符,预计需要花费 6 分钟才能阅读完成。
以前的博客是使用 Jekyll 托管在 github 上,后来用着越来越不方便,比如没有自动生成 post,不能一键部署,文件结构和配置也是比较繁琐,更重要的是有时候用 markdown 写一篇文章,生成的静态文件很乱,应该是有些字符解析的问题。现在下决心换成了 hexo。
Nodejs 安装
因为 hexo 是基于 nodejs 的应用,所以要先安装 nodejs 才可以。我这里以 Ubuntu 为例,因为我自己一直在使用 ubuntu。使用如下命令即可:
sudo apt-get install nodejs
sudo apt-get install npm
Hexo 安装
Hexo 是一个功能强大的静态网站生成系统,快速、简洁、高效。Hexo 支持 GitHub Flavored Markdown 的所有功能,甚至可以整合 Octopress 的大多数插件。可以一键部署到 github,还有丰富的插件和主题, 还支持热部署哦。执行如下命令进行安装。
sudo npm install hexo-cli -g
快速开始
安装 Hexo 安成后,使用如下命令快速新建一个博客系统,然后运行它:
hexo init blog
cd blog
npm install
hexo server
如果 npm 安装失败,请使用 sudo 安装。运行成功后,访问 http://0.0.0.0:4000/ 就可以看到博客的样子的,对就是我现在的博客这个样子,o(∩∩)o… 哈哈。
现在我们来看看 Hexo 生成博客的目录结构:
.
├── _config<span class="class">.yml</span>
├── db<span class="class">.json</span>
├── node_modules
├──package<span class="class">.json</span>
├──public
├── scaffolds
├── source
└── themes
其中_config.yml 是配置站点的文件,public 是 hexo 生成的静态站点文件夹,scaffolds 是模板文件夹,source 是存在用户资源的文件夹,themes 是主题文件夹。
站点配置
找到 title,subtitle,author 参数配置,分别配置站点的标题、副标题和作者, 比如我这里是:
title: 飞雪无情的博客
subtitle: 专注于 Android、Java、移动互联网、项目管理、软件架构
description:
author: 飞雪无情
language: zh-CN
然后配置站点的 url 和 permalink,这两个分别是你的站点的 url host 地址以及文章的永久连接,我这里是:
url: http://www.flysnow.org
root:/
permalink::year/:month/:day/:title.html
permalink_defaults:
permalink 我配置的是年月日以及 title,后缀是 html,便于搜索收录。permalink 详情参见:http://hexo.io/zh-cn/docs/permalinks.html
新增一篇文章
使用如下命令即可新增一篇 md 格式的文章:
hexo new'github-page-with-hexo'
然后就会在 sources/_posts 生成一篇文件名为 github-page-with-hexo.md 的 markdown 文件。编辑该文件就可以写博客了。这里有一些 Front-matter 需要介绍,可以配置文章使用的模板、所属的分类和 tag 等。
Front-matter 是文件最上方以 —- 分隔的区域,用于指定个别文件的变量,举例来说:
title:"使用 Hexo 在 Github 上搭建自己的博客"
date:2015-03-1022:30:04
tags:
-Hexo
-Github
categories:
-Hexo
---
请注意,目前的 categories 只能有一个一级分类,如果填写多个,第二个会被解析为二级分类,以及类推。tags 可以允许有多个。更多关于 Front-matter 请参考 http://hexo.io/zh-cn/docs/front-matter.html。
发布到 github page
首先你已经创建好了你的 github page 对应的 git 库,没有创建的可以 google 相关博客。然后新建一个 hexo 分支,存放你现在 hexo 的所有文件。然后执行如下命令清理并生成发布的静态站点文件。
hexo clean
hexo generate
然后把生成的 public 目录下的文件放到你的 master 分支下即可。git commit 后把这两个分支推送到你的 github 上。git 库结构可以参见我的 github page 库 https://github.com/rujews/rujews.github.io。
最后
然后等个几分钟,访问你的域名就可以看到你的网站了。如 http://www.flysnow.org/。关于更多的 Hexo 请参考官方文档 http://hexo.io/zh-cn/docs/。
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-07/120846.htm