年度归档: 2026 年
-
本文记录了一次 WordPress 英文文章页面横向滚动条的完整排查过程。在 Polylang 多域名、Twenty Twenty-Five 区块主题、W3 Total Cache Page Cache 与 W3TC Object Cache(Redis 后端)的组合下,页头搜索框的 `min-width: 250px` 导致英文语言切换器被挤出父级 Flex 容器。将其修改为 `min-width: 0` 后,英文页面却仍然输出旧 CSS。进一步对比 Cloudflare、源站响应、数据库原始内容与 `get_post()` 返回值后确认:数据库中的 `wp_global_styles` 已经更新,但 W3TC Object Cache 仍在返回旧的文章对象。最终通过 `clean_post_cache()` 精确清理对应对象缓存后,新 CSS 正常生效,横向滚动条消失。本文同时结合此前 Polylang 英文子域名迁移经历,总结了 W3TC Page Cache 多域名识别、旧 Polylang option 和旧全局样式对象缓存等问题的排查思路。
-
本文记录了将 WordPress 英文站从 `www` 主域名下的 `/en/` 路径迁移到 `en.shuijingwanwq.com` 子域名的完整实践。由于站点原有数千条标签 slug 转换、旧标签合并和专题重定向规则,不能简单使用一条通用 rewrite。最终通过“历史路径映射、最终域名转换、普通 `/en/` 兜底迁移”三层逻辑,实现旧英文标签和专题一次 301 到达最终英文地址,同时保留中文主域名规则与查询参数,并将 `www` 和 `en` 子域名后续产生的 301 规则分开维护。
-
本文继续记录 WordPress + Polylang 英文站从 /en/ 迁移到 en.shuijingwanwq.com 之后的 CDN 与缓存配置过程。前一篇文章已经解决了源站侧的 Polylang 多域名配置、W3 Total Cache Page Cache 兼容、Redis Object Cache 旧配置缓存等问题。本文重点处理 en.shuijingwanwq.com 接入 Cloudflare、启用 HTML 页面缓存、验证首页与文章页 MISS 到 HIT、确认登录用户 Cookie、REST API、登录页和后台入口不会被缓存,并最终通过 Nginx 将非 www 域名下的后台入口统一 301 到 www.shuijingwanwq.com。
-
本文记录一次将 WordPress + Polylang 英文站从路径模式 /en/ 迁移到独立子域名 en.shuijingwanwq.com 的完整排查过程。迁移过程中并不是简单修改 Polylang URL 设置就结束了,而是连续遇到了 Polylang 保存失败、扩展插件 Fatal Error、W3 Total Cache 将英文子域名误判为 foreign domain 并 301 回主域名、Redis Object Cache 缓存旧语言配置等问题。最终通过修复 Polylang 扩展插件、添加 W3TC 兼容 mu-plugin、清理 Redis 对象缓存,并验证 html lang、canonical、hreflang 和 W3TC 页面缓存文件,完成了英文子域名的源站侧迁移。
-
本文记录了一次在 OneinStack 已有 Nginx 虚拟主机中追加 en.shuijingwanwq.com 子域名,并重新签发包含多个域名的 SSL 证书的实操过程。由于主站已经有稳定访问量,且 Nginx 配置中包含多项自定义规则,作者没有采用“删除虚拟主机后重新添加”的方式,而是选择在现有 vhost 中追加 server_name、调整跳转规则、检查 Nginx 配置、添加 DNS 解析,并通过 acme.sh 重新签发和安装证书。文章也说明了这一步是后续将 WordPress 英文站从 /en/ 迁移到 en.shuijingwanwq.com 的服务器与证书准备工作。
-
这篇博客记录了一次 WordPress 核心升级失败的完整排查过程:在从 WordPress 7.0 升级到 7.0.1 时,后台反复出现 524 超时和“另一更新正在进行”的提示。通过检查 `core_updater.lock`、WordPress 当前版本、升级临时目录、文件权限以及 EdgeOne 转发状态,最终确认 WordPress 核心文件并未半升级,问题主要集中在经过 CDN 代理后的后台长请求超时。文章进一步总结出:前台页面适合继续走 EdgeOne 缓存,而 WordPress 后台更新、插件安装等维护操作,后续应考虑通过独立后台域名或源站直连方式处理,以避免 CDN 对后台长请求造成干扰。
-
这篇博客复盘了我在申请 Carbon Ads / BuySellAds 广告平台后的后续沟通过程。从最初主动提交 Publisher 申请,到预约 Zoom 会议未能顺利进行,再到对方提出 reschedule 后没有继续回复,整个流程暴露出海外广告平台合作中沟通效率和优先级不确定的问题。经过这次经历,我决定暂时将 Carbon Ads / BuySellAds 从近期重点推进事项调整为长期观察渠道,把更多精力放在英文内容建设、搜索流量增长、联盟营销和技术服务入口优化上。
-
这篇文章记录了我在技术博客联盟营销中的第一笔真实收益:原本以为收益会先出现在点击更多的 Vultr 项目中,结果却来自文章数量和链接数量都更少的 BeWild AI。通过对 Vultr 与 BeWild AI 的后台数据、文章类型和用户需求进行对比,我意识到联盟营销不能只看点击量和链接数量,更要看文章是否命中强需求。本文也顺便整理了我当前使用“联盟项目表”和“联盟营销文章表”分别管理项目与文章的做法,并记录了第一笔收益暂时无法归因到具体文章的问题,为后续优化联盟链接归因和转化分析提供了一个真实起点。
-
这篇文章基于前一篇将 WordPress `/wp-content/uploads/` 媒体库资源迁移到 `media.shuijingwanwq.com + Cloudflare` 的实践,继续分析 EdgeOne 流量成本控制问题。通过 EdgeOne 指标发现,虽然 uploads 图片和附件已经从 EdgeOne 拆出,但 `www.shuijingwanwq.com/en/` 英文路径仍占今日 EdgeOne 流量约三分之一。文章进一步评估了页面缓存、Bot 流量、`/en/` 路径占比、Nginx 现有 301 规则冲突风险,以及将英文站迁移到 `en.shuijingwanwq.com + Cloudflare` 的收益与代价。最终结论是:英文站拆分到子域名有助于显著降低 EdgeOne 流量,但不能仓促执行,需要先确认 Polylang、多语言链接、canonical、hreflang、sitemap、Cloudflare 接入和 301 跳转规则,确保旧 `/en/*` 路径能够一次跳转到最终英文子域名地址。
