缘起#

之前写过不少东西,散落在各个平台。后来想把这些内容集中起来,弄一个自己的文档站。

选来选去,最后用的是 Hugo(静态网站生成器) + GitHub(代码托管) + Cloudflare Pages(免费托管)。

为什么要 Cloudflare Pages?因为它免费、无限流量、不用自己维护服务器,而且配合 GitHub 可以实现推送即发布——写完文章 git push,网站自动更新。

技术栈#

Hugo 是 Go 语言写的静态网站生成器,特点是极快(我那个 48 章古籍的站,几百个页面,Hugo 秒级构建)。主题用的是 Book,它支持侧边栏导航、文档折叠、搜索,特别适合文档类站点。

GitHub 用来存源代码。每次写新文章,就是在 content/docs/xxx/ 下新建一个 .md 文件,然后 git push。

Cloudflare Pages 监听 GitHub 的新提交,收到后自动运行 Hugo 构建,把生成的 HTML 发布到 docs.iita.net。全程不用我管服务器。

目录结构#

项目放在 D:\GitHub\docs.iita.net-Hugo,核心是 content/ 目录:

content/
├── _index.md         首页(分类卡片 + 最近更新)
└── docs/
    ├── shanghanlun/       伤寒论
    ├── zhenjiujiayijing/  针灸甲乙经
    ├── jinguiyaolve/      金匮要略
    ├── zipingzhenquan/    子平真诠
    ├── suisuiji/          碎碎记
    └── jiaocheng/         软件教程

每个 .md 文件头部有 frontmatter:

---
title: "文章标题"
description: "一句话简介(会显示在列表页)"
weight: 1
---

weight 数字越小排越前。

发布流程#

  1. 在 content/docs/xxx/ 下新建或修改 .md 文件
  2. 本地启动 Hugo 预览:hugo server --source "D:\GitHub\docs.iita.net-Hugo" --port 1317
  3. 浏览器打开 http://localhost:1317 确认效果
  4. git commit + push
  5. Cloudflare Pages 自动构建,几分钟后 docs.iita.net 就更新了

现在站上有什么#

  • 伤寒论、针灸甲乙经、金匮要略:经典中医古籍
  • 子平真诠:清·沈孝瞻著,命理古籍,48 章
  • 碎碎记:随笔记录
  • 软件教程:Hugo 博客搭建、推送脚本等

有什么想看的内容,可以随时提。