使用Hexo搭建个人博客(一)-简介

什么是Hexo


Hexo是一个简单地、轻量地、基于Node.js的一个静态博客框架,可以方便的生成静态网页托管在github、coding上,或者存放在自己购买的云主机上。
Hexo的作者是一名台湾的大学生@tommy351 ,引用Hexo作者 @tommy351 的话:

快速、简单且功能强大的 Node.js 博客框架。
A fast, simple & powerful blog framework, powered by node.js.

其Gihub的地址为:https://github.com/hexojs/hexo
Hexo的官网地址为:https://hexo.io/zh-cn

Hexo的特点
  1、依赖少(仅依赖node),易于安装。
  2、台湾人写的,不用担心对中文支持不好。
  3、风一般的速度,Hexo基于Node.js,使用 Markdown(或其他渲染引擎)解析文章,支持多进程,利用靓丽的主题,几百篇文章也可以秒生成静态网页。
  4、流畅的撰写,支持GitHub Flavored Markdown和所有Octopress的插件。
  5、扩展性,Hexo支持EJS、Swig和Stylus。通过插件支持Haml、Jade和Less等。

为什么使用静态博客


对于个人网站来说,没有比博客更合适的形式了。在博客中,文章才是最主要的,一切都显得主次分明,干净利落。相比之下,论坛中主题和回复鱼龙混杂,阅读体验非常差。
而静态博客,其静态网页部署方便,浏览速度快。静态博客编译之后是纯html页面,优点就是支持它的环境十分好找,例如github、coding、七牛云存储等站点都支持静态页面托管,自然是我们的首选了。
但是静态博客并非没有缺点。动态博客更新文章时,脚本是不变的,只需要更新数据库。静态博客要频繁改动文件,不支持增量式上传的东西,比如ftp,就难于管理。此外,还要十分熟悉git各种命令,才能部署页面。
有很多静态网页生成器都可以生成静态页面。比如:
Ruby
  Jekyll(github 默认pages 引擎)
  Octopress(兼容jekyll)
Python
  Hyde Jekyll的Python语言实现版本
  Cyrax 使用Jinja2模板引擎的生成器
PHP
  Phrozn PHP语言实现的静态网站
Node.js
  Hexo

那么Hexo是如何生成静态页面,并在gitpages展示的呢?
如果要做博客,Wordpress 的思路是 php + MySql,既通过动态页面的形式。
而静态页面的网站,只能使用 html 拼合成博客。
因此首先Hexo自己本地文件夹的 source 就是数据库,以.md(markdown) 格式存储文章,theme 文件夹是主题文件,以 .yml 等类型,决定了页面如何“组装”每次运行hexo g 命令,hexo(node.js程序)会遍历你的 source 目录,建立索引,根据你theme文件夹的主题生成页面到 public 文件夹。这时 public 文件夹就是一个纯由 html javascript css 等内容制作的博客,而这些恰好能在 gitpages识别最后 hexo d 将 public 文件夹的内容复制到临时目录,以 git 方式 push 到 github 的指定项目的指定分支,由 github 进行显示。

posted @ 2018-01-15 21:14  归来似少年  阅读(803)  评论(0编辑  收藏  举报