Try404
IT 与工具

我为什么放弃自研 Astro CMS,最后回到 Ghost

我原本想用 Astro 自研一套内容站,最后却回到了 Ghost。这不是技术倒退,而是一次关于成本、稳定性、会员系统和持续发布的真实取舍。

我为什么放弃自研 Astro CMS,最后回到 Ghost

我一开始并不是准备直接用 Ghost。

最早的想法是:既然我自己懂一点技术,也有自己的服务器和域名,那为什么不直接用 Astro 做一套完全属于自己的内容站?前端自己写,后台自己接,会员系统自己做,数据库自己控制。听起来很自由,也很“工程师正确”。

后来我真的做了。

Astro 前端跑起来了,PostgreSQL 接上了,登录、会员、后台、中文英文切换、管理页面也做了一版。站点本身并不差,甚至看起来还挺像那么回事。但真正把它放到服务器上、接域名、配 OpenResty、调 Docker、看资源占用、处理邮件和会员登录之后,我开始意识到一个问题:

我现在真正要做的,可能不是“开发一个 CMS”。

我真正要做的是“持续发布有价值的内容”。

这两个目标看起来接近,但其实完全不是一回事。

自研的吸引力

自研 Astro CMS 最大的诱惑是自由。

页面怎么长、栏目怎么组织、会员入口怎么放、后台要什么功能,理论上都可以自己决定。没有平台限制,没有主题限制,源码就在自己手里。对于一个喜欢折腾的人来说,这种控制感很有吸引力。

Astro 本身也很适合做内容站。它快、轻、结构清晰,静态内容体验很好。如果只是做一个作品集、文档站、展示页,Astro 是非常舒服的选择。

但我这次想做的不是一个简单展示站。

Try404 需要的不只是文章页面。它还需要会员注册、邮件验证、付费内容、Newsletter、标签体系、后台编辑、SEO、社交卡片、权限控制、数据统计,后面可能还要接 Stripe、做会员资料库。

这些东西每一个单独看都不难,但全部加起来,就是另一个项目。

更现实一点说:我如果继续自研,接下来很长一段时间都会被后台功能、登录逻辑、数据库迁移、邮件问题、权限判断和部署细节拖住。内容还没开始写,我已经在维护一个半成品 CMS。

这就不对了。

上服务器后,问题变得很具体

本地开发时,很多问题都不明显。

真正部署到我的小服务器上以后,问题变得非常具体。服务器是 Ubuntu 24.04,1 核 2G,40GB 系统盘,洛杉矶机房,30Mbps 峰值带宽,400GB 流量包。这个配置不是不能用,但每一个服务都要算账。

一开始服务器上已经有 1Panel、OpenResty、Ghost 和 MySQL。后来我又跑 Astro、PostgreSQL、Node 服务。服务一多,资源压力马上变得明显。不是说机器立刻跑不动,而是我开始担心后面每加一个功能,维护成本都会往上堆。

部署过程中也遇到过一些很真实的小问题。

比如上传文件到 /opt 目录时权限不对,SCP 直接报 Permission denied。比如 Docker 需要把 ubuntu 用户加进 docker 组。比如 1Panel 的 OpenResty 容器和自己跑的服务之间,反向代理到底应该填 127.0.0.1、公网 IP,还是容器网关地址。比如域名解析、生效时间、SSL、国内 4G 访问表现,都不是“复制一段教程”就能完全解决的。

这些问题本身都能修,但它们提醒我:自建项目不是写完代码就结束了,真正麻烦的是后面的持续维护。

如果 Try404 的目标是成为一个长期内容产品,那第一阶段最重要的应该是降低系统复杂度,而不是展示我能写多少代码。

Ghost 的价值不是酷,而是完整

Ghost 不酷。

至少跟自研系统比,它没有那种“完全属于我”的爽感。它还要跑 MySQL,主题开发也有自己的限制,后台有些地方不能随便改。刚开始我甚至觉得它有点重,有点不够自由。

但用了几轮之后,我开始理解它的价值。

Ghost 已经把一个内容站最麻烦的基础设施做好了:文章编辑、标签、作者、会员、邮件、Newsletter、付费内容、SEO、Open Graph、X Card、站点设置、主题上传、导入导出。这些功能不是不能自研,而是没必要在第一阶段自研。

尤其是会员系统。

一个内容站如果后面要做订阅,最怕的是早期就把会员、邮件、权限、支付这些东西做歪。Ghost 至少给了一个成熟的默认结构。免费会员、付费会员、邮件登录、Newsletter、文章访问权限,这些都已经可用。我要做的是把内容、定位和主题体验打磨好,而不是从零造一套账户系统。

所以我最后的判断是:

Astro 适合我以后做一些独立工具、专题页、交互页面。
Ghost 更适合 Try404 现在这个阶段做主站。

不是谁更高级,而是谁更适合当前目标。

我真正放弃的是什么

放弃自研 Astro CMS,并不是放弃技术控制。

我放弃的是第一阶段不必要的复杂度。

我不想为了一个还没有内容积累的网站,先花几周甚至几个月去完善后台、会员、邮件、权限和部署链路。那样很容易陷入一种假勤奋:每天都在开发,但真正能被读者看到的内容几乎没有增长。

这对内容站很危险。

内容站的第一性原理不是技术栈,而是持续输出。读者不会因为你后台是自研的就订阅你。读者会因为你提供了真实判断、可复用经验、清晰路线和长期更新而留下。

所以我现在更愿意把技术能力用在几个更关键的位置:

  • 改 Ghost 主题,让网站有自己的识别度。
  • 设计内容结构,让栏目不发散。
  • 优化邮件、域名、SEO 和社交分享。
  • 把真实踩坑记录整理成文章和会员资料。
  • 必要时再用 Astro 做独立工具或专题页面。

这比一开始就自研全套 CMS 更现实。

Try404 接下来怎么做

这次取舍也顺便重新定义了 Try404。

它不是一个泛 AI 博客,也不是一个纯技术教程站。它更像一个实测型个人情报站。我会把自己真实试过的 AI 工作流、IT 工具、自建服务、旅行路线、摩托装备和内容系统记录下来。

核心不是“我知道什么”,而是:

我试过什么。
我保留了什么。
我放弃了什么。
我最后建议你怎么做。

目前 Try404 会先聚焦三个主栏目:

  • AI 实验室
  • IT 与工具
  • 旅行与摩托

其它内容,例如电影、阅读、播客、会员资料库,会先作为辅助内容存在,不急着铺太开。起步阶段最怕的不是内容少,而是方向看起来什么都想做。

第一篇文章写这个主题,也算是给自己立一个标准:

Try404 不追求第一时间搬运信息。
Try404 记录亲自试过之后的判断。

如果一个东西我没有真的用过,没有踩过坑,没有形成自己的取舍,那它暂时不应该成为这里的核心内容。

给普通个人站的建议

如果你也想做一个个人内容站,我现在的建议很简单:

如果目标是写作、会员、Newsletter 和长期发布,先用 Ghost、WordPress、Substack 这类成熟系统,不要一上来就自研。

如果目标是做作品集、文档、静态展示、独立工具页,Astro 很好。

如果你非常享受开发 CMS 本身,那自研也没问题。但要诚实地区分:你是在做内容站,还是在做一个 CMS 项目。

我这次最大的收获就是这个区分。

对 Try404 来说,Ghost 不是终点。它只是当前阶段最合适的底座。真正重要的是从今天开始,把那些真实用过、真实踩过、真实留下来的东西,一篇篇写出来。

这也是 Try404 的第一条正式记录。

亲自试过,再分享。

继续阅读