这个博客已经荒废了很久。由于定位上是一个偏向技术型的博客,记录学习中遇到的一些问题,所以我一般不会把学术研究内容或浅显的问题写在博客里。此外由于不想花钱和时间搭服务器,也不想花时间学习更多的建站知识,所以选择了 github pages 这一平台。本文就如何搭建 github pages 以及提高大陆地区的访问速度做一个简单介绍。

Updated: 2021-01-29 添加 Gridea 的教程链接.
Updated: 2021-07-21 美化 md 文件.

其实在 github pages 上建站真的太简单了,什么 hexo、hugo 和 Jekyll 等都有很多人写了很好的教程。之前我也尝试过 hexo 和 hugo,也套用了一些很好看,功能也很全面的主题,比如我最喜欢的一款 Cactus

说来可笑,明明定位是偏技术的博客,我却摒弃了以上的工具,选择了一个可谓纯小白的工具 Gridea 。Gridea 集成了 markdown 编辑器、git、主题以及博客发布系统,支持 github pages、sftp 和 coding pages,可以令没有任何建站基础的小白也能很好地完成博客网站的搭建。自从用了 Gridea,我就再也没有纠结于用什么主题,怎么修改主题配置等等琐碎的操作。此外,如果对 git 或 css 等了解不深,也无需担心,因为在 Gridea 基本上不会有直接操作 git 或者 css 的时候。

虽然我之前用过 hexo 和 hugo,我还是要说,Gridea 太香了。Gridea 也提供了若干精美的主题(我现在使用的就是 fly 这一主题),可以实现一定程度上的自定义功能。如果之前有用过 hexo 之类的工具,转移到 Gridea 上就是驾轻就熟,毫无操作难度。

Gridea 的 用法 不在此赘述,现在聊聊如何提高 github pages 的访问速度

  • 首先使用浏览器的 F12,查看拖累页面加载的元素是什么

  • 就我个人经验来说,访问速度慢多半是由 js 或 css 文件加载慢导致的。比如 fontawesome 下的 all.css 和 unpkg 下的 gitalk.css

  • 找到加载慢或者完全无法加载的元素,如果是图片,那么建议换一个图床;如果是 css 或 js,那么建议换一个 cdn(如 cdnjs)

此处的问题是,如果在 Gridea 生成的主页 index.html 文件里更改 cdn 是没有用的,因为 Gridea 会在每次更新后把主题里的模板覆盖在 index.html 等文件里,因此正确的做法是在主题文件夹下,找到 templates/includes 文件夹下的 ejs 文件,更改 ejs 里对应的 cdn 才行。在 fly 主题里,需要更改 head.ejsscripts.ejs 文件里的 cdn 地址,将 fontawesome 和 unpkg 换成 cdnjs。

更换 cdn 后,我的博客之前是无法加载的,现在只需 4s 即可完全加载(实际上 2s 就完成了图片和内容的加载)。