个人博客开通啦~

我的个人的博客终于开通啦~ 选择了 Hexo + Markdown 搭建, 托管于 Coding.net, 以下简单地记录了下搭建的过程.

简介

  • Hexo 是一个快速、简介且高效的博客框架, 使用 Node.js 带来了超快的生成速度, 支持 Markdown 语法, 拥有丰富的插件, 部署方便, 只需要一条指令即可.
  • Coding.net 是个代码托管平台, 类似于 Github, 由于众所周知的原因, Github 的访问速度比较慢, 所以选择了 Coding.net.

步骤

由于 Hexo 依赖于 Node.js, 所以首先安装 Node.js. (PS: 由于相关的网站都是国外的, 所以需要自备梯子)

安装依赖软件

1
brew install -v autoconf automake libtool libpng jpeg

安装 Node.js

可以去 Node.js 的官网下载对应平台的安装文件进行安装, OS X 的平台可以选择使用 Homebrew 安装

1
brew install node

安装 Hexo

Hexo 使用的 Node.js 的包管理命令 npm 来安装

1
npm install hexo-cli -g

初始化 Hexo

1
2
3
hexo init blog
cd blog
npm install

本地预览

1
hexo server

Hexo 会在本地启动一个 Web 服务器, 方便在本地实时预览, 地址为http://0.0.0.0:4000/, Hexo 会自动更新对文件所做的修改, 所以只需要让 Hexo 的 Web 服务器在后台运行即可愉快地写博客啦.

1
hexo server > /dev/null &

常用命令

  • 新建一篇文章

    1
    hexo n 标题 // 等同于 hexo new 标题
  • 启动 Hexo 的 Web 服务器

    1
    hexo s // 等同于 hexo server
  • 生成静态网站资源

    1
    hexo g // 等同于 hexo generate
  • 发布网站

    1
    hexo d // 等同于 hexo deploy

更多信息请参考官方文档

主题

主题选择了 NexT, 配置了部分第三方插件, 详细说明请参考主题的官方文档, 有中文版本, 很容易理解的.

网站资源优化

由于 Hexo 默认生成的页面是没有经过压缩优化的, 为了提升网站的加载速度和减少不必要的流量, 使用 Hexo 的插件 Hexo-all-minifier 来压缩页面, 可以压缩 HTML, CSS, JS 以及图片资源.

OS X 平台需先安装以下依赖

1
brew install libtool automake autoconf nasm

然后安装 Hexo-all-minifier

1
npm install hexo-all-minifier --save

接着编辑 _config.yml 配置文件, 添加以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
html_minifier:
enable: true
exclude:

css_minifier:
enable: true
exclude:
- '*.min.css'

js_minifier:
enable: true
mangle: true
output:
compress:
exclude:
- '*.min.js'

image_minifier:
enable: true
interlaced: false
multipass: false
optimizationLevel: 2
pngquant: false
progressive: false

然后就没有然后了, Hexo 已经会自动压缩页面了, 压缩效果可以鼠标右键查看本页面的源码.

站点发布

注册账号

Coding.net 上注册一个账号, 然后新建一个项目, 开启该项目的 Pages 服务.

配置 SSH 的公钥

使用 ssh-keygen 生成 SSH 的密钥

1
ssh-keygen -t rsa -C {user_name}

默认生成在本地的 ~/.ssh 目录下, 将生成的公钥文件 id_rsa.pub 里面的内容复制到 Coding.net账户 -> SSH 公钥

安装部署插件
1
npm install hexo-deployer-git --save
发布信息配置

编辑 _config.yml 文件, 修改 deploy 部分如下:

1
2
3
4
deploy:
type: git
repo: [email protected]:{user_name}/{project_name}
branch: coding-pages

{user_name}Coding.net 的账号, {project_name} 为刚才新建的项目名称.

发布
1
hexo d

如果没有错误发生, 那就可以通过 http://{user_name}.coding.me/{project_name} 访问了

参考链接

使用Hexo建立独立博客