前言

开始之前,介绍一下博客搭建的原因。
之前一直在使用b3log搭建的blog,由于本人一直做技术,总把时间放在了优化代码上,导致博客基本没有更新。
另外,最近有其他的项目需要使用到原来的ecs,导致博客网站不稳定,于是决定或一个单纯的写文章的系统,用来搭建博客。
于是选中了hexo,这样我看以专注于写文章,将博客放在静态服务器上,减少成本。

准备工作

  1. 准备域名,我使用的是阿里云的域名,价格比较便宜,一年20元。
  2. 备案,域名备案,ICP 备案
  3. 选择博客部署的位置,开始选择的github page,但是后来发现github page的访问速度太慢,于是换成了cloudflare 的pages,速度快了很多。
  4. 安装nodejs,hexo的运行需要nodejs的支持。
  5. 安装hexo,hexo的安装非常简单,只需要使用npm安装即可。
  6. 安装hexo的插件,hexo的插件也非常多,可以根据自己的需求安装。
  7. 配置 CDN 加快访问速度。

开始搭建

域名

由于之前已经有博客了,本次只是迁移,所以省去了买域名和备案的过程

搭建博客

安装nodejs

我之前一直在使用mise管理nodejs 版本,本次也直接使用mise安装nodejs
关于mise可以看 mise

brew install mise
mise use node@lts

安装hexo

npm install -g hexo-cli

初始化博客

hexo init blog

创建文章

hexo new post "文章标题"

安装butterfly主题

npm install hexo-theme-butterfly

配置butterfly主题

打开 blog/_config.yml 文件,找到 theme 配置,将其设置为 butterfly

theme: butterfly

部署

创建github 仓库

在github 创建一个仓库xxx.github.io,将博客部署到github 上
安装hexo-deployer-git

npm install hexo-deployer-git --save

blog/_config.yml 文件中添加以下配置

deploy:
  type: git
  repo: https://github.com/xxx/xxx.github.io.git
  branch: master

部署博客

hexo clean
hexo generate
hexo deploy

这时你的博客已经上传到github 上了,但是访问速度太慢,于是我使用cloudflare 的pages 来加速访问。

配置cloudflare 的pages

打开cloudflare 的控制台,找到 Workers 和 Pages ,点击 创建 ,选择 Pages,选择导入现有仓库,选择刚才创建的github 仓库,点击 创建 ,然后点击 部署 ,等待部署完成。

配置自定义域名

找到刚才部署好的pages,点击 管理 ,找到 自定义域名 ,点击 添加 ,输入你的域名,点击 添加,之后按照页面提示,添加CNAME 记录。

现在你就可以通过你的域名访问博客了。

全球加速

由于 cloudflare 的pages 是国外的,所以访问速度比较慢,于是我考虑将博客使用国内CDN进行加速,并且通过 DNS 多线路解析,将国内用户域名解析到国内CDN上。

配置国内CDN

我使用的是腾讯云的CDN,配置如下:

配置DNS 多线路解析

我使用的是阿里云的DNS,添加两条解析记录,请求来源选择中国地区解析到腾讯云的CDN,请求来源选择境外解析到cloudflare 的pages。

最后使用站长工具检测下速度

国内测速:

境外测速:

看到大部分地区都在1s以内,速度还是非常快的。

总结

本次博客搭建,使用的是hexo 搭建的,主题使用的是butterfly,部署在github 上,通过cloudflare 的pages 进行加速,使用国内CDN进行加速,通过DNS 多线路解析,将国内用户域名解析到国内CDN上,保证国内用户访问速度。下一期会介绍博客主题的一些配置。

参考

hexo
butterfly
cloudflare