Hexo是一个轻量级的个人博客创建工具,它不依赖数据库,支持众多的主题模板,并且可以使用 Markdown 语法来写博客,并且因为它是不依赖于数据库的静态网页博客,所以可以非常方便的使用 Github / Gitee 的 Pages 服务来托管博客空间,免去了购买服务器的费用。这种种优点让 Hexo 简直是为拥有极客精神的程序员量身定做的工具。
但是由于 Hexo 的代码在 Github 上,而且它基于 Nodejs 实现,需要安装 npm 依赖,国内的 Github 和 npm 速度都比较慢,这里介绍快速搭建 Hexo 环境的方法。
安装 NodeJs (已安装的同学请跳过)
NodeJs的官网国内访问速度比较慢,可以去淘宝的源里面下载:
https://npm.taobao.org/mirrors/node/latest/x64/
下载了安装包后直接安装就可以。
安装后新打开一个命令行终端,用 node –version 测试是否安装成功。
如果提示 node 不识别的话,可以尝试手动把 node 安装路径添加到系统Path里 (如:C:\Program Files\nodejs)
安装 yrm
yrm 可以指定 npm 和 yarn 默认下载源,可以指定国内源从而提高速度
1 | npm --registry https://registry.npm.taobao.org install -g yrm |
使用上面的命令而不是简单的 npm install -g yrm
的原因也是为了提高速度
yrm 安装成功后,可以用 yrm ls
命令查看可用源,用 yrm use taobao
可以切换 taobao 源。
安装 hexo
执行以下命令即可安装
1 | npm install -g hexo-cli |
新建博客工程
同样的,如果直接在用 hexo init
命令新建博客的话,国内环境下大概率会卡在下载landscape 模板资源上,因为 github 太慢了。
可以通过 gitee 实现加速。
gitee 导入 hexo-starter 库
- 首先你要有 gitee 的账号(注册很容易的,强烈推荐使用,可以用它现在介绍的方法来实现 github 加速),
- 打开 gitee 网站,登录了自己的账号后,点击在自己的账号头像左边的那个加号,然后选择最后一项
从 GitHub / GitLab 导入仓库
- Git 仓库 URL 填写
https://github.com/hexojs/hexo-starter.git
, 然后点导入即可
同样的方法导入 hexo-theme-landscape 库
- Git 仓库 URL 填写
https://github.com/hexojs/hexo-theme-landscape.git
- Git 仓库 URL 填写
上面导入了两个库后,就有了两个自己的 hexo 用到的库,使用 git clone 下载到本地,然后把 hexo-theme-landscape 里面的文件,拷贝到 hexo-starter\themes\landscape 文件夹下。
然后在 hexo-starter 目录下,就可以按照常规的 hexo 命令来写博客了
1 | npm install // 安装依赖 |
使用 Gitee 托管博客
Gitee 提供 Pages 服务,可以托管静态网页,hexo 生成的博客网站就是静态网页的形式,所以非常合适。
首先我们要创建基于 Gitee Pages 的个人站点。
配置 Gitee Pages
- 打开 Gitee网站,登录个人账户后,通过浏览器的地址栏查看一下你的用户id是什么,如果地址栏是 https://gitee.com/z2a,那么用户id就是 z2a, 这样你最终的个人博客站点的地址就是 z2a.gitee.io。如果你不满意这个 id 的话,建站之前可以去改一个,因为这个 id 要跟后面要建的代码库的名字保持一致,不然的话,就无法使用 xx.gitee.io 这种二级域名来访问你的博客了
- 新建以你gitee 账号id为名字的库,注意两点:仓库名称必须与你的账号id保持一致、是否开源选择开源。其它的都随意,最后点击创建即可
- 点击进入刚才新建的库,点击 服务,然后选择 Gitee Pages, 接下来的页面,把 强制使用 HTTPS 勾选上,然后点击启动,你就拥有一个自己的静态网站啦
配置 hexo deploy
在 hexo-starter 文件夹里面的 _config.yml中,可以配置你的博客的基本信息,包括标题,作者,语言,主题等。Deploy 的配置也在这里。
实例:
1 | # Deployment |
这样,使用 hexo d
即可把博客发布出去啦
PS: 有时候如果发现 hexo d
成功发布之后,网站上的内容并没有发生变化,这时候可以去 gitee 的你的博客的库上面,重新去点击 Gitee Pages, 然后点击 刷新 即可