体验过 EmDash 后,我为什么还是继续使用 WordPress

上一篇把现有博客在 EmDash 上复刻了一遍,结尾留着一句:换不换栈,还没到那一步。试用站 blog.rmb.ee 挂了一段时间,和主站放在同一台 Nginx 后面对照过之后,这一步可以定了。主站继续用 WordPress。

EmDash 能把这个站跑起来。文章、项目、留言、评论通知和阅读数都在,后台改内容也不用重新部署。让我留下的是另外两件每天会碰到的事:线上现在并不更快,而且我换主题的习惯跟它合不来。复刻过程记在 《试用 EmDash:把现有 WordPress 博客复刻一版的完整记录》,这篇只写复刻之后的决定。

同一台机器上,现在谁更快

2026 年 10 月 27 日,我对首页、文章页和文章列表各打了 5 次请求,取首字节时间的中位数。请求没有开启压缩,所以下面的体积是 HTML 原文大小。

文章页差了大约 200 毫秒,原因在缓存路径。WordPress 的 HTML 能进 Nginx 缓存,响应头是 x-cache: HIT。上传目录由 Nginx 直接发文件,文章里已经有一部分缩放图。

EmDash 的 HTML 每次都是 MISS,请求落到 Node 和 SQLite。图片地址在 /_emdash/api/media/file/,缓存头是 max-age=0,浏览器每次都要再确认一次。文章页没有 srcset。同一张 179 KB 的封面原图两边都在用,差别在这条路径,不在文件本身。

页面骨架是 EmDash 更瘦。首页只有一个 16 KB 的脚本。WordPress 文章页能到 15 个脚本和 10 个样式表。样式目前反过来:EmDash 打成一个 348 KB 的 CSS,构建时关了压缩;主题这边拆成多个文件,加起来大约 279 KB,缓存时间很长。首页两边都嵌了很多封面,未压缩资源总量都在 3.7 MB 左右,所以更小的 HTML 还没有变成打开速度。

这些数字只说明今天的线上状态。EmDash 把匿名页面放进 Nginx 缓存,再把图片改成静态长缓存和缩放图,骨架上的优势才会显出来。在那之前,读者打开一篇文章,WordPress 更快。

部署本身就更重

WordPress 在现有主机上已经是 PHP、MySQL 和 Nginx。主题文件盖上去就能看。

EmDash 是另一套运行时。小内存的机器跑不动 Vite 构建,所以要在自己的电脑上 npm run build,再把包传上去,服务器只装生产依赖。macOS 上装出来的 node_modules 不能直接拷到 Linux,SQLite 和图片处理都是原生模块。Node 22 要常驻,Nginx 再反代过去。

更新时有几样不能盖掉:data.db、上传目录、环境变量和加密密钥。文章和图片只在后台改,这一层和 WordPress 一样省事。改页面或样式,就要构建、打包、覆盖、重启。

真正卡住我的是换主题

我换主题主要看心情。一套看腻了,就想换下一套,而且希望马上在线上看到。

WordPress 的主题是 PHP、CSS 和 JS,解释执行。FTP 上传到 wp-content/themes,刷新就是新样子。现在这套主题也是现成文件,没有编译这一步。

EmDash 的主题就是这个 Astro 应用。线上跑的是编译后的 dist。改样式、改布局,都要在本机构建,再上传重启。本地开发服务器可以热更新,但我想看的是线上那一版。FTP 上去立刻能看到,和构建完再发布,不是同一件事。

主题一年换一次,这次构建可以接受。换主题如果是日常习惯,这条链路会一直显得笨重。熟练之后也省不掉构建。

所以怎么留

主域名继续放在 WordPress。写文章、换主题、看线上效果,都在这边完成。

EmDash 的试用站先留着。它适合主题已经定下来、想把页面和样式放进一个仓库里慢慢改的时候。等缓存和图片这两处补上,再考虑要不要让主域名指过去。现在它是同一套内容的另一套运行时。

能跑起来,和值得当成每天用的地方,是两件事。

The post first appeared on crayonxiaoxin.

参与讨论