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

分类: 云厂商

  • 此前在测试 WordPress 的 EdgeOne 与 Cloudflare Query String 缓存归一化时,由于没有找到真实存在的日期归档分页,/YYYY/MM/DD/page/N/ 场景一直没有完成验证。随着 2026 年 8 月 15 日日期归档出现第 3 页,这次重新补测中文站与英文站。EdgeOne 中随机 Query String 直接命中已有缓存且正文完全一致;Cloudflare 中虽然原始 HTML SHA-256 每次不同,但最终确认差异仅来自 /cdn-cgi/l/email-protection 邮箱地址混淆。归一化该动态字段后,Clean 与 Dirty 四份 HTML 完全一致,最终确认两个 CDN 的日期归档分页 Query String 归一化均工作正常。

  • 阿里云 ECS 再次频繁触发 CPU 告警后,我结合云监控与 EdgeOne 离线日志,确认自动化抓取和大量回源 MISS 是主要诱因,而 W3TC 未预缓存归档分页只是放大因素。考虑到服务器长期运行在 1 核 2G、内存占用接近 60%,且后续还要部署 Go Tour,最终将实例升级为 2 核 4G。本文记录了告警分析、规格选择、快照备份、升配重启,以及 Nginx、PHP-FPM、Redis、W3TC 和三个域名的完整验证过程。

  • 本文记录一次 WordPress 中文站 EdgeOne 524 故障的排查与优化过程。故障期间,大量带有 amp、nonamp、query-62-page 等查询参数的文章和列表页出现缓存 MISS,导致 1 核 ECS 上的 PHP-FPM 进程被占满。为减少缓存碎片和重复回源,本文将原有文章详情页的 Query String 归一化方案扩展至首页、分类、标签、系列和日期归档等公开列表页,并分别在 EdgeOne 与 Cloudflare 中配置缓存 Key 忽略、回源去参和 URL 重写。同时保留 WordPress 搜索参数 s,通过 MISS → HIT、缓存 Age 及 Nginx 源站日志验证规则已经生效。

  • 2026 年 7 月 30 日,网站在两个多小时内出现约 177 万次 EdgeOne L7 请求,其中约 109 万次实际回源。结合 EdgeOne 指标与 Nginx 日志,最终确认这是一轮大规模 PHP、ASP 与 WebShell 文件路径扫描。排查还发现,网站接入 EdgeOne 和 Cloudflare 后,原有 Nginx 限流实际按 CDN 回源节点 IP 计数,存在误伤正常请求的风险,因此暂时注释源站限流配置,并完成中英文站点验证。

  • 在将 W3 Total Cache、EdgeOne 与 Cloudflare 的主要 HTML 缓存统一延长到 4 天后,我发现新文章发布后,首页和 Sitemap 可能继续命中 CDN 中的旧缓存。本文记录如何在保留普通页面 4 天长缓存的同时,仅将中英文首页和公开 Yoast Sitemap 的 Edge TTL 缩短到 2 小时,并分别通过 EdgeOne 与 Cloudflare 实测缓存过期、重新回源和 HIT 行为。最终在内容新鲜度、缓存命中率和维护成本之间取得更合适的平衡。

  • 本文记录一次 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 的主机监控与报警体系。排查发现原有云监控 Agent 2.1.56 已停止运行,导致 CPU、内存、磁盘等操作系统级指标长期没有数据。随后通过传统云监控「主机监控」将 Agent 升级至 4.0.0,恢复 CPU、内存、Load、磁盘、网络和公网带宽等监控,并分别为 CPU、内存、磁盘及公网流出带宽设置 Info、Warn、Critical 三级报警。结合恢复后的实际监控数据,现阶段 1 核 2G ECS 与 2 Mbps 公网带宽仍有明显余量,因此暂不升级服务器,而是先通过持续监控积累长期运行基线,让服务器运维从“故障后排查”转向“异常前预警”。

  • 一次 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 中文站与英文站的 CDN 缓存命中率优化过程。通过分析 EdgeOne 与 Cloudflare 的请求状态、响应流量、HTTP 状态码和资源类型,确认大量 MISS 主要来自 WordPress HTML 长尾页面,而原有 1~4 小时的缓存时间偏短。将两边的 HTML 边缘缓存 TTL 统一调整为 12 小时,并补全个性化 Cookie 绕过规则后,Cloudflare Cache Hit Rate 从 16.76% 提升至 20.25%,EdgeOne 请求 Hit 从约 50.5% 提升至 58.5%,流量 Hit 从约 26.6% 提升至 35.6%,验证了统一延长缓存时间的实际效果。

  • 将 media、en 和 admin 拆出 EdgeOne 后,我使用 BOCE、中国成都移动宽带和 WebPageTest,对中文站、英文站及媒体图片进行了实际性能测试。结果显示,中文站继续使用 EdgeOne 后,在中国大陆和海外均保持良好性能;英文站通过 Cloudflare 在新加坡和美国的首屏表现稳定,但中国大陆移动、联通线路访问明显较慢;media 图片资源是当前架构中波动最明显的部分。综合成本、性能与后台稳定性来看,现有分层架构仍值得保留,但需要继续关注 Cloudflare 在中国大陆线路中的稳定性及图片对 LCP 的影响。

👨‍💻 个人品牌

王世强|PHP / Go 技术顾问

15+ 年 Web 后端开发经验,专注于系统维护、架构优化、性能调优及 Linux 运维。

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

为创业团队、中小企业及独立开发者提供长期技术支持与远程合作服务。

👉 关于我 & 合作

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

2026 年 8 月
 12
3456789
10111213141516
17181920212223
24252627282930
31