Hugo + Cloudflare Pages 搭建个人博客
本文记录这个博客的搭建方式,从买域名到发布一个静态站点。技术选型和步骤与本站的实现保持一致。 这套技术栈长什么样 一句话概览:用 Hugo 把 Markdown 编译成静态页面,源码在 GitHub,Cloudflare Pages 连接 GitHub 仓库并在 Cloudflare 侧构建、托管,域名解析和 CDN 也在 Cloudflare。 各部分的分工: 组件 作用 Hugo 静态站点生成器,把 content/ 下的 Markdown 编译成 HTML GitHub 存放源码,作为部署的触发源 Cloudflare Pages 连接 GitHub 仓库,执行 hugo --minify 构建并托管产物 Cloudflare DNS 域名解析,把自定义域名指向 Pages 项目 Cloudflare CDN 边缘缓存与加速,Pages 默认自带 整个流程没有用 GitHub Actions,也没有容器化构建,构建这一步完全由 Cloudflare Pages 在它自己的环境里完成。基础站点的构建命令就是一句 hugo --minify;本站为了顺带生成搜索索引,把它包成了一个很短的脚本(见下文进阶模块),思路一样。 基础模块 这一部分从 0 到「能访问」。 买域名 域名可以在任意注册商购买,我最早是在 GoDaddy 买的。以 GoDaddy 为例: 打开 godaddy.com,在搜索框里输入想要的域名,看是否可注册。 选一个后缀(.com、.dev 等),加入购物车,结账。注意第一年常有促销价,续费价通常更高,下单前看清续费价格。 结账时可关掉 GoDaddy 自家的一堆增值服务(邮箱、隐私保护等),后面把 DNS 切到 Cloudflare 后这些大多用不上。 Cloudflare 自己也能直接注册域名(Cloudflare Registrar,按批发价、免费 WHOIS 隐私保护),但支持的后缀有限。如果想要的后缀在它的列表里,直接在 Cloudflare 买、省去后面改 Nameserver 的步骤也可以;后缀不在列表里就按上面的思路在别的注册商买,再把 DNS 切过来。 ...