标签: WordPress
-
在将 WordPress 英文站从 /en/ 迁移到独立子域名后,我发现部分新发布的英文译文虽然已经与中文文章建立 Polylang 关联,但中文详情页仍然缺少语言切换器和 hreflang。排查确认,问题来自 W3 Total Cache Redis Object Cache 在多 Host 环境下缓存了旧的 post_translations_relationships 数据,随后 Page Cache 又继续保存错误 HTML。本文记录了 WP-CLI、真实 HTTP Runtime、精确 Object Cache 删除和 Page Cache 验证过程,并说明为什么最终暂时不引入复杂的跨 Host Redis 清理逻辑,而选择保持现有 TTL,让该低优先级问题自然恢复。
-
将 WordPress 英文站从 /en/ 迁移到独立子域名后,我排查了 Polylang 多域名、独立后台 Host、W3 Total Cache Page Cache 与 Redis Object Cache 之间的缓存失效问题。最终确认并修复了英文文章更新后语言首页 Page Cache 未完整失效,以及 posts 对象缓存跨 Host 失效的问题,并将方案整理为 MIT 许可的独立 MU Plugin。真实后台 Update 验证后,Origin 层已能够正确返回最新内容,剩余问题进一步定位到 EdgeOne、Cloudflare 等 CDN 层。
-
在为 WordPress 中英文归档页增加 Adsterra Native Banner 时,前台始终无法及时显示最新模板内容。经过对 WPCode、PHP Snippet、Shortcode、Language Visibility、Block Template、CDN、W3 Total Cache Page Cache 与 Redis Object Cache 的逐层排查,最终确认 www 与 en 不同 Host 下的 W3TC Object Cache 保留了旧版 wp_template。分别清理两个域名上下文的 Object Cache,并重新生成对应 Page Cache 后,中英文广告均恢复正常。此次问题也暴露出现有多域名缓存同步机制对 wp_template 等结构性内容覆盖不足,下一步将重点完善已有 MU 插件,并继续处理首页最新文章仍停留在 7 月 28 日的问题。
-
记录一次 SlyTranslate + GLM-5.2 整篇翻译中的 Protected Token 校验失败排查过程。问题最初表现为文章尾部连续丢失 Gutenberg STRUCT Token,在增加 Tail STRUCT Repair、强化 Prompt 和 Tail Guard 后仍未解决。进一步分析发现,真正原因是中文文章中存在 Paragraph → Plaintext → Paragraph 的跨块自然语言结构,GLM 为生成更自然的英文主动重组内容,导致 Protected Token 顺序漂移。最终通过清理不必要的 Plaintext、让 Gutenberg 区块边界与自然语言语义边界保持一致,在不放宽严格 Token 验证的情况下成功完成 GLM-5.2 整篇翻译。
-
2026 年 7 月 28 日,英文站 en.shuijingwanwq.com 持续出现 Cloudflare 526 Invalid SSL certificate。排查发现,服务器同时保留了 RSA 与 ECC 两套 www.shuijingwanwq.com 的 acme.sh 证书记录:RSA 证书仅包含主域名和根域名,ECC 证书则额外包含英文子域 en.shuijingwanwq.com,但两套证书却共同写入同一组 Nginx 生产证书文件。当天凌晨旧 RSA 证书自动续期后覆盖了 ECC 证书,导致英文子域不再包含在 SAN 中,最终触发 Cloudflare Full (strict) 验证失败。通过恢复 ECC 三域名证书、移除旧 RSA 自动续期记录,并完成源站与 Cloudflare 公网验证后,英文站恢复 200,证书自动续期冲突也得到永久修复。
-
本文记录一次 WordPress 双 CDN 架构下的 Query String 缓存优化实战。中文站通过 EdgeOne 自定义 Cache Key 与回源请求参数设置,让 canonical 文章 URL 的不同查询参数共用缓存,并在 MISS 回源时删除 Query String;英文站则通过 Cloudflare URL Rewrite Rule 实现相同目标。整个过程结合 HIT/MISS、Age、301、CF-Ray 与 Nginx access log 进行实际验证,最终将规则收敛为仅优化 /YYYY/MM/DD/ID/ 形式的标准文章 URL,在降低随机参数缓存穿透风险的同时保持 CDN 配置简单、清晰、易维护。
-
在通过 EdgeOne 屏蔽异常 Sogou UA 流量、解决 WordPress 502 后,阿里云 ECS 仍然偶发 CPU 95%~100% 告警。进一步结合 PHP-FPM Slow Log、Nginx 请求日志和 W3 Total Cache 实测发现,大量带 Query String 的前台请求会导致 W3TC Disk: Enhanced 页面缓存无法复用,使请求重新进入 PHP-FPM,完整执行 Gutenberg、Polylang、Post Views Counter、Redis Object Cache 和数据库查询。正常 URL 第二次请求 TTFB 仅约 0.1 秒,而带参数 URL 每次仍需约 7~11 秒。最终决定不逐个封禁参数,也暂不升级服务器或修改 W3TC 内部逻辑,而是在 EdgeOne 与 Cloudflare CDN 层进行 Query String 缓存键和回源 URL 规范化,从根源减少动态参数造成的缓存穿透。
-
在一次 WordPress 502 故障排查结束后,我继续完善阿里云 ECS 的主机监控与报警体系。排查发现原有云监控 Agent 2.1.56 已停止运行,导致 CPU、内存、磁盘等操作系统级指标长期没有数据。随后通过传统云监控「主机监控」将 Agent 升级至 4.0.0,恢复 CPU、内存、Load、磁盘、网络和公网带宽等监控,并分别为 CPU、内存、磁盘及公网流出带宽设置 Info、Warn、Critical 三级报警。结合恢复后的实际监控数据,现阶段 1 核 2G ECS 与 2 Mbps 公网带宽仍有明显余量,因此暂不升级服务器,而是先通过持续监控积累长期运行基线,让服务器运维从“故障后排查”转向“异常前预警”。
-
在 WordPress 历史文章迁移过程中,将原有流程图内容转换为 MerPress Mermaid 区块后,前台出现 Syntax error in text,并显示 Mermaid 11.9.0。最初将错误的 流程图 TD 修改为 flowchart TD 后问题仍未解决,最终发现关键在于节点文本写法。将 A[节点文本] 统一调整为 A[“节点文本”] 后,包含 test()、main()、go test() 以及中英文混合内容的流程图恢复正常渲染。本文记录完整排查过程,并总结适用于 WordPress 历史内容迁移的 Mermaid 节点编写与验收规则。
