两种哲学
动态博客和静态博客代表了两种不同的内容发布哲学:
- 动态博客:每次请求都在服务端实时渲染页面,查询数据库、拼接模板、生成 HTML 再返回
- 静态博客:在发布时一次性生成所有 HTML 文件,请求时直接返回文件,无需任何计算
前者灵活多变,后者极速稳定。哪种更适合个人博客?我从四个维度来分析。
1. 性能
动态博客的性能瓶颈
WordPress 的请求链路:
1用户请求 → Nginx → PHP-FPM → 数据库查询 → PHP 渲染 → HTML 返回
每一步都有开销。使用缓存插件(如 WP Rocket)可以缓解,但不能根除。
静态博客的性能
1用户请求 → Nginx/CDN → 返回 HTML 文件
只有一步。HTML 文件可以部署在 CDN 边缘节点上,用户访问的是离自己最近的节点,延迟通常在 10ms 以内。
实测对比
| 指标 | WordPress(有缓存) | Hugo 静态博客 |
|---|---|---|
| 首字节时间 | 200-500ms | 10-30ms |
| 完全加载 | 1.5-3s | 0.3-0.8s |
| Lighthouse 分数 | 75-90 | 95-100 |
| 并发能力 | 受限于服务器 | 无限(CDN) |
2. 安全
动态博客的安全风险
WordPress 的安全问题主要集中在三个层面:
- 核心漏洞:PHP 运行环境本身是关键攻击目标
- 插件漏洞:平均每个 WordPress 站点安装 20+ 插件,每个插件都是一个潜在入口
- 暴力破解:
/wp-admin登录页是 24/7 被扫描攻击的目标
根据 WPScan 的数据,被黑的 WordPress 站点中,超过 50% 是因为过期的插件。
静态博客的安全性
静态博客的安全逻辑很简单:没有后端,就没有攻击面。
- 没有数据库,不存在 SQL 注入
- 没有登录系统,不存在暴力破解
- 没有 PHP 运行时,不存在代码注入
- 只有纯 HTML 文件,攻击者无从下手
唯一需要关心的是域名和 GitHub 账号的安全。
3. 成本
| 项目 | 动态博客 | 静态博客 |
|---|---|---|
| 域名 | 60-80 元/年 | 60-80 元/年 |
| 服务器/VPS | 200-600 元/年 | 0(Cloudflare Pages 免费) |
| 数据库 | 含在服务器 | 0 |
| CDN | 额外付费 | 自带 |
| 备份 | 额外配置 | Git + GitHub 免费 |
| 年费 | 300-800+ 元 | 60-80 元 |
静态博客只需要域名费用,其他全免。
4. 维护
动态博客的维护工作
- PHP 版本升级
- WordPress 核心更新
- 插件更新(平均每月 2-3 次)
- 数据库优化
- 安全审计
- 备份管理
静态博客的维护工作
- 写 Markdown
git push- Hugo 自动构建部署
没有数据库要维护,没有插件要更新,没有安全补丁要打。文章的"备份"就是 Git 仓库本身。
WordPres 的优势在哪里?
公平地说,WordPress 在以下场景确实更好:
- 多作者协作:多人分权限编辑内容
- 非技术用户:可视化编辑器和后台管理
- 复杂交互:电商、论坛、会员系统
- 短期项目:插件组合快速搭建 MVP
但对于个人写作博客来说,这些优势都用不上。
静态博客的"弱点"是如何被解决的?
静态博客曾被诟病的几个方面,现在都有了成熟的解决方案:
| 痛点 | 解决方案 |
|---|---|
| 没有评论 | Twikoo / Waline / Giscus 等第三方评论系统 |
| 没有搜索 | JSON 索引 + 前端搜索 / Algolia DocSearch |
| 没有表单 | Formspree / 腾讯兔小巢 |
| 没有管理后台 | Lumin Admin / Decap CMS / TinaCMS |
| 不能定时发布 | 构建 hook + cron 定时触发 |
| 不能加密文章 | 后端 API + 前端 Crypto 双重校验 |
结论
对于个人博客这个场景:
| 维度 | 赢家 |
|---|---|
| 性能 | 静态博客 |
| 安全 | 静态博客 |
| 成本 | 静态博客 |
| 维护 | 静态博客 |
| 灵活 | 动态博客 |
5 个维度中静态博客赢了 4 个。这就是为什么越来越多的个人博客选择从 WordPress 迁移到 Hugo / Hexo / Astro。
静态博客不是"简陋"的代名词,而是"克制"的选择——只做博客该做的事,把性能、安全和简洁做到极致。
留言评论
期待你的想法评论加载中