欢迎来到博客世界

序言

相比于承载于大互联网平台的自媒体,个人博客的世界要孤独的多。在大多数的个人自建博客中,并不会获得可观的浏览量,甚至无法进行点赞和评论的互动(如果没有搭建评论系统的话),金钱收益更是无从谈起。即便是像「槽边往事」这样拥有庞大用户量的博客,也要通过公众号的渠道来获取流量入口和广告收益。

但个人博客也给予了你极大的自由。随时随地的不受限制的编辑,任意的外链的引入,无须审核的发布,都给了创作者更大的自由度。此外,写作数据完全掌握在自己手中,不用担心若干年后自己的作品随着互联网平台的更替而消失。最重要的是,写作的价值来自于写作本身,不是吗?

如果你也想尝试搭建一个属于自己的个人博客网站,请继续看下去吧。搭建博客网站并不难,只需要一点点的技术力加上大胆的尝试。

我使用的技术框架是静态博客框架。静态博客的意思是,每次写作之后需要编译成静态文件,发布到互联网上。读者在阅读网站的时候,网站无须后台提供算力,因此可以省去对后台服务器的算力需求(仅有存储需求)。静态博客框架的使用方法也更加简单,对文本源文件的维护也更加方便。

我调研过的常见的静态博客框架包括 Hugo、Hexo等。其中,Hugo 的主要优势在于它的极高编译速度(由 Golang 语言编写),即使是文章数量很多的时候依然能够保持出色的性能。从长期主义的角度来看,后续的博客帖子数量会越来越多,因此编译速度是重要的。此外,我对 Go 语言也很感兴趣,它简单的语法和作为编译型语言的高性能让我赞叹不已。最终,我选择使用 Hugo 来作为静态博客框架。

对于博客网站在互联网的部署,我使用的是十分方便的无须服务器和域名的方案。常见的做法其实是使用 GitHub pages 进行托管(非常推荐)。下文我给出了另一种使用 Cloudflare pages 的方案的详细介绍。

Hugo 的使用

安装 hugo

macOS 推荐使用 Homebrew 包管理器安装 hugo ,在终端中使用命令(需要预先配置 Homebrew 环境):

brew install hugo

检查 hugo 是否安装成功

hugo version 

会得到类似hugo v0.140.2+extended+withdeploy darwin/arm64 BuildDate=2024-12-30T15:01:53Z VendorInfo=brew的输出,代表安装成功

创建新 hugo 项目

安装完成后,创建一个新项目,名字比如叫作:my-hugo-site

hugo new site my-hugo-site

创建新的博客帖子

为您的 Hugo 网站添加第一篇文章,运行以下命令:

hugo new content posts/hello-world.md

打开 ./content/posts/hello-world.md 文件,开始博客写作吧。

当您准备好发布时,请删除 frontmatter(文件头)中的 draft: true 行或改成 false

构建

本地动态构建,并启动一个服务器用于预览:

hugo server 

终端会输出一个本地访问的 url,点击就可以在浏览器当中查看自己的博客网站了。

如果只是编译生成静态博客文件:

hugo

发布到互联网 (无须额外购买域名的方案)

基于 Cloudflare pages 的部署

安装 Wrangler(需要预先配置 Node.js 环境):

npm i -g wrangler

登录 Cloudflare:

wrangler login

构建 Hugo ,在你的 Hugo 项目根目录执行(可选添加 –minify 用来减少文件存储):

hugo --minify

执行后会生成 public/ 文件夹作为静态资源输出目录(除非你用 publishDir 改过)。

如果是首次使用,则需要创建一个 Cloudflare/Pages 项目。(<PROJECT_NAME> 自取,--production-branch 设你的生产分支名,例如 main )

wrangler pages project create <PROJECT_NAME> --production-branch main

也可以跳过创建 pages 项目这步,直接用下一步的 deploy,Wrangler 会在终端提示你选择/创建项目名。

用 Wrangler 一键部署到 Pages:

wrangler pages deploy public

部署成功后,你会获得如 <PROJECT_NAME>.pages.dev 的互联网访问地址,将你的网址分享给朋友们吧。

最后,欢迎来到博客世界。

后记

  • 配置好看的 Hugo 主题的过程也很有趣,可以在搭建 demo 完成之后来做迭代。我才发现我选择的 Diary 主题并不适合技术分享文章,它渲染的代码框竟然不提供复制按钮。
  • 使用 GitHub pages 部署同样可以获得免费域名,而且同时做好了代码库的版本管理。但缺点是它需要同时公开博客网站仓库的源代码。最后提醒,做好代码库的版本管理非常重要,可能在误删仓库等情况中起死回生。

参考资料

如何建站

hugo 主题


最后修改于 2025-10-31