没有不值得去解决的问题,也没有不值得去学习的技术!

标签: Nginx

  • 本文记录一次 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 配置简单、清晰、易维护。

  • 一次 WordPress 生产站间歇性 502 故障排查记录。阿里云 ECS 一度出现 CPU 100%、Load 超过 9、PHP-FPM Socket 队列达到 510/511,大量请求返回 499 和 502。通过分析 Nginx 日志发现,最近 20000 条请求中有 18455 条携带 Sogou web spider/4.0 User-Agent,并以每分钟约 500~700 次的频率持续遍历网站。随后在 EdgeOne 中通过 *Sogou* User-Agent 规则进行边缘拦截,Sogou UA 请求降至 0,PHP-FPM 队列恢复为 0/511,CPU 空闲率最高恢复到 97%,后台连续请求全部返回 HTTP 200。此次排查说明,服务器出现性能瓶颈时,不应急于升级配置,应先确认异常流量和真正的资源消耗来源。

  • 本文记录了将 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 对后台长请求造成干扰。

  • 本文记录了在 OneinStack 环境下排查 WordPress 与 W3 Total Cache 缓存未生效问题的全过程。针对响应头显示动态生成而插件显示已启用的矛盾,文章验证了 Redis 状态与 Nginx 配置,分析了 Disk: Enhanced 模式的依赖性及 Response Headers 的误读。作者最终修正了初始结论,确认在此环境下 W3 Total Cache Page Cache 默认生效,无需额外 Nginx 重写或配置,并通过关闭 Page Cache 保留 Redis Object Cache 优化了架构。

  • 本文介绍了如何解决 WordPress English 语言下残留的中文标签问题。通过分析别名冲突的根源,采用修改中文标签名称以匹配 Slug 的方案,结合 Go 脚本重新生成映射并执行标签合并。最终实现了自动化的标签清理、生成 Nginx 301 跳转规则及传递权重,彻底解决了 404 错误问题。

  • WordPress 站点配置 Nginx 全局限流后,后台编辑文章时出现标签保存失败及 429 错误。经排查发现,Gutenberg 编辑器处理标签时会频繁调用 REST API,导致触发了每秒 6 次的严格限流阈值。最终通过将 Nginx 限流速率调升至 30 次/秒并增加突发缓冲,消除了 429 拦截,恢复了标签功能的正常保存,同时保留了基本的安全防护能力。

👨‍💻 个人品牌

王世强|技术实践者 · 独立博客作者

15+ 年 Web 与系统实践经验,持续关注网站基础设施、系统优化、AI 工具与自动化。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

长期建设个人项目,也欢迎合适的技术交流、咨询与合作。

👉 关于我

.env (14) add (16) AI 翻译 (31) Apache (13) Array (19) A Tour of Go (69) Cache (13) CDN 缓存 (13) CentOS (23) ChatGPT (20) ChatGPT Plus (15) chrome (19) Cloudflare (34) Codex (22) composer (42) composer.json (22) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (34) environment variable (19) error (24) file (15) filter (20) Git (27) GitHub (23) Gitlab (15) GLM-5.2 (27) Go (63) go-tour-i18n (14) Google AdSense (30) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (35) http (21) https (22) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (58) postman (18) Query (17) queue (16) Rancher (24) Redis (51) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (21) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (40) update (20) VPN (17) W3 Total Cache (39) Windows 10 (46) WireGuard (28) WordPress (134) WordPress 多语言 (13) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (13) 多语言网站 (13) 多语言翻译 (36) 技术博客 (15) 故障排查 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 9 月
 123456
78910111213
14151617181920
21222324252627
282930