未坐标系

静态博客架构对比

字数统计: 4702 阅读时长: 12.0 min
2026/04/11
loading

静态博客架构对比

想搭一个免费、快速、好看的个人技术博客?WordPress 太重,Halo 需要服务器维护,那剩下的选择是什么?这篇文章从 9 个主流方案中筛选出 3 个,帮你找到最适合的那个。


为什么选静态博客

你可能听过 WordPress、Typecho、Halo 这些"动态博客"——它们每次有读者访问你的文章,服务器就要实时查询数据库、渲染页面,然后返回 HTML。这意味着你需要一台一直运行的服务器、一个数据库、以及持续的运维工作。

静态博客完全不同。你在本地用 Markdown 写好文章,通过一个工具一次性把所有文章转换成 HTML 文件,然后把文件扔到 CDN 上。读者访问时,CDN 直接返回现成的 HTML——没有数据库查询、没有服务端渲染、没有服务器要维护。

这种方式的好处是显而易见的:

  • :访问时直接返回静态文件,页面加载速度远超动态站点
  • 安全:没有数据库、没有服务端逻辑,黑客几乎无从攻击
  • 免费:HTML 文件可以托管到 Cloudflare Pages、Vercel 等平台的免费额度上,零服务器成本
  • 可控:所有文章就是 Markdown 文件,天然适合 Git 管理,拥有完整的修改历史

当然也有局限:每次写完文章需要重新"构建"并部署,不能像动态博客那样后台点一下就发布;也没有用户登录、在线支付这类需要服务端的功能。但对于个人技术博客来说,这些完全不是问题。

完成"Markdown → HTML"转换的工具叫做 SSG(Static Site Generator,静态站点生成器),接下来要聊的就是选哪一个。


从 9 个候选中选出 3 个

当前主流的 SSG 有不少,我把它们列出来并说明了筛选逻辑:

框架语言GitHub Stars状态结论
HugoGo~87,500活跃✅ 入选
AstroNode.js / TS~50,000+快速增长✅ 入选
HexoNode.js~39,000中文社区活跃✅ 入选
JekyllRuby~49,000式微❌ 太老太慢,社区衰落
VuePressNode.js / Vue~22,000停滞❌ v2 五年未发正式版
VitePressNode.js / Vue~13,000活跃❌ 专注文档站,不适合博客
EleventyNode.js~18,000小众❌ 社区太小,中文资源匮乏
PelicanPython~12,000小众❌ 生态远不如 Node.js / Go
ZolaRust~15,000小众❌ 与 Hugo 定位重合但生态远不及

入选理由:Hugo 构建速度碾压级且零依赖;Astro 是当前增长最快、架构最现代的 SSG;Hexo 中文博客圈占有率最高、主题开箱即用。

以下所有内容只对比这三个框架。


先看结论

如果你不想看详细对比,这里是我的推荐:

你的情况推荐一句话理由
追求极致简单稳定,不想折腾Hugo下载一个文件就能用,千篇文章不到 1 秒构建完,主题成熟,零运维
喜欢现代前端开发体验,未来可能扩展Astro开发体验最好,唯一支持在文章中嵌入交互组件,但需要 Node.js 环境
中文博客新手,想要最省事Hexo中文主题最多(Butterfly 主题功能全面),中文教程最多,遇到问题最好搜到答案

核心特性对比

构建速度

构建速度指的是"把所有 Markdown 文件转换成 HTML"需要多长时间。这直接影响你每次写完文章后等待部署的时间。

HugoAstroHexo
百篇文章< 0.5 秒1-3 秒3-10 秒
千篇文章< 1 秒2-10 秒10-30 秒
依赖环境无(单二进制)Node.js 18+Node.js 18+
离线可用

Hugo 之所以这么快,是因为它用 Go 语言编写,编译成一个独立的可执行文件——下载下来双击就能跑,不需要安装 Node.js、Python、Ruby 任何运行时环境。Astro 和 Hexo 都需要 Node.js 环境,首次使用还要 npm install 下载依赖(通常 100-400 MB)。

对大多数博客(几百篇文章以内)来说,三个框架的构建速度都可以接受。差距在文章数量上千时才会明显拉大。

渲染能力

这里涉及到几个概念,先简单解释:

  • SSG(静态生成):构建时生成纯 HTML,这是三个框架都支持的基本模式
  • SSR(服务端渲染):每次访问时由服务器实时生成页面——只有 Astro 支持
  • Islands 架构:Astro 独有的技术,页面默认是纯静态 HTML(不加载任何 JavaScript),只有需要交互的部分(如评论区)才会加载 JS
能力HugoAstroHexo
纯静态生成
服务端渲染(SSR)
在文章中嵌入交互组件

对博客的实际影响:如果你只是写文章、贴代码、放图片,三个框架没有区别。只有当你想在文章里嵌入交互式图表、可运行的代码沙盒这类东西时,Astro 才有实质优势。

Markdown 与内容支持

能力HugoAstroHexo
代码高亮✅ 内置✅ 内置✅ 内置
数学公式✅ 内置✅ 内置✅ 插件
图片处理(缩放/裁剪/滤镜)✅ 内置✅ 内置❌ 需插件
RSS✅ 内置✅ 内置✅ 插件
多语言✅ 原生✅ 插件

Hugo 有一个独有优势:内置完整的图片处理管道。你可以直接在文章里指定图片的缩放尺寸、裁剪方式,构建时自动生成优化后的图片,不需要任何额外工具。Astro 也内置了图片优化,但能力不如 Hugo 全面。Hexo 则需要依赖第三方插件,而且插件质量参差不齐。

扩展能力

能力HugoAstroHexo
扩展方式Shortcodes + 自定义模板官方集成 + 组件NPM 插件
嵌入 React / Vue / Svelte 组件
TypeScript 支持✅ 原生

Astro 的扩展能力是三个框架中最强的。它允许你在博客中使用 React、Vue、Svelte 等前端框架的组件,也原生支持 TypeScript。这意味着如果你有前端开发背景,可以非常灵活地定制博客。


博客功能对比

先说结论:三个框架在核心博客功能上几乎没有差别。 文章排版、标签分类、代码高亮、数学公式、暗色模式、SEO、RSS、Sitemap、分页——这些全都是标配。

差异只出现在以下几个地方:

功能HugoAstroHexo
全文搜索需配置需配置需插件
图片灯箱需引入 JS需引入 JS需插件
自动图片优化✅ 内置✅ 内置
多语言(i18n)✅ 原生需插件

也就是说,如果你不需要"文章中嵌入交互组件"和"自动图片优化"这两个功能,选哪个都一样。


主题生态

博客的外观由主题决定,所以主题生态的丰富程度直接影响你的使用体验。

维度HugoAstroHexo
主题数量400+100+300+
中文主题丰富中等非常丰富
主题更新频率
推荐主题PaperMod / Stack / LoveItAstro BlogButterfly / Fluid / NexT

如果你看重中文主题:Hexo > Hugo > Astro。Hexo 的 Butterfly 主题是目前中文博客圈最流行的主题之一,暗色模式、标签分类、全文搜索、图片灯箱等功能全部内置,几乎不需要额外配置。

如果你看重主题质量和长期维护:Hugo 的 PaperMod、Stack 等主题经过多年打磨,更新频繁,设计简洁专业。Astro 的主题数量虽然少,但官方主题质量高,且与 Tailwind CSS 集成好。

定制难度:Hugo 使用 Go Template 模板语言,语法独特,学习曲线最陡。Astro 使用类似 JSX 的语法,有前端基础的话上手很快。Hexo 使用 EJS 等模板语言,和 HTML 很像,门槛最低。


部署方案

三个框架构建后都生成纯静态文件,所以部署方式完全相同——把文件上传到任何一个支持静态托管的平台即可。

平台推荐

平台费用带宽国内访问推荐度
Cloudflare Pages免费无限⭐⭐⭐⭐⭐⭐⭐⭐⭐
Vercel免费(个人)100 GB/月⭐⭐⭐⭐⭐
GitHub Pages免费100 GB/月⭐⭐⭐⭐⭐⭐
Netlify免费100 GB/月⭐⭐⭐⭐⭐⭐

我的选择:Cloudflare Pages。理由很简单——无限带宽。其他平台免费额度只有 100 GB/月,一旦文章被搜索引擎收录或被分享到社交媒体带来流量峰值,就可能产生费用。Cloudflare Pages 完全没有这个顾虑。而且在国内访问稳定性上,Cloudflare 也明显优于 Vercel。

注意:所有平台的默认域名(*.pages.dev*.vercel.app 等)在国内访问都不稳定,必须绑定自定义域名


框架详细评价

Hugo:极简主义的最佳选择

Hugo 是我综合推荐第一的框架。它的核心优势可以概括为一个字:

作为 Go 语言编写的单二进制文件,Hugo 不需要安装 Node.js、不需要 npm install、不需要管理 node_modules——下载一个可执行文件就能用。千篇文章亚秒级构建,无论你推送多少次代码触发自动构建,构建时间都可以忽略不计。

主题生态成熟且质量高。PaperMod、Stack、LoveIt 等主题经过多年打磨,功能完善、更新频繁。内置的图片处理管道(缩放、裁剪、旋转、滤镜)是三个框架中的独有优势。多语言支持也是原生内置。

它的短板也很明确:Go Template 模板语法独特,对没有 Go 经验的开发者不太友好;不支持嵌入交互式组件,也不能做服务端渲染。但如果你只是写技术博客,这些根本不是问题。

一句话:下载一个文件,选一个主题,开始写文章。没有比这更简单的了。

Astro:面向未来的选择

Astro 是当前增长最快的 SSG 框架。它的核心卖点是 Islands 架构——简单说就是"页面默认不加载任何 JavaScript,只有需要交互的部分才加载"。这对博客意味着:文章页加载极快(纯 HTML),只有评论区、搜索框等组件才会按需加载 JS。

它是三个框架中唯一支持 SSR(服务端渲染)的。虽然博客一般不需要 SSR,但如果你未来想在博客中加入动态功能(如实时数据展示),Astro 可以无缝切换。

开发体验也是三个框架中最好的。基于 Vite 的开发服务器支持即时热更新(改了代码立刻看到效果),构建报错信息清晰易懂。还原生支持 TypeScript 和 MDX(MDX 允许你在 Markdown 文章中直接使用 React/Vue 组件,实现交互式内容)。

需要注意的风险:2026 年 1 月 Astro 被 Cloudflare 收购,长期发展方向受商业决策影响。而且中文主题生态相对薄弱,不如 Hexo 丰富。

一句话:如果你有前端开发背景,想要最好的开发体验和最大的扩展空间,选 Astro。

Hexo:中文博客新手的最省事选择

Hexo 是中文博客圈占有率最高的 SSG。它的最大优势就是中文生态极其丰富

Butterfly 主题是它的王牌——暗色模式、标签分类、全文搜索、代码高亮、数学公式、图片灯箱、阅读时长统计……这些功能全部内置,安装主题后几乎不需要额外配置。中文文档完善,遇到问题在百度或 Google 上很容易找到解决方案。

Hexo 的插件生态覆盖面也很广——搜索、评论、SEO、字数统计等都有现成插件,对不想折腾配置的博客作者来说非常友好。

短板是构建速度最慢(百篇文章 3-10 秒),不过对大多数博客来说影响不大。另外插件质量参差不齐,部分已停止维护,国际社区影响力在下降。

一句话:如果你是中文博客新手,想要最快搭出一个好看的博客,选 Hexo + Butterfly。


总结

场景选 Hugo选 Astro选 Hexo
追求极简、零依赖
构建速度最重要
中文主题生态最重要
新手入门最省事
需要交互式组件
有前端开发背景
担心平台锁定风险

没有"最好的"框架,只有"最适合你"的框架。如果你仍然拿不定主意,我建议先试 Hugo——它是风险最低、最稳定、最不需要操心的选择。

CATALOG