分类: Cloudflare
-
Cloudflare 于 2026 年 9 月更新 AI 爬虫管理策略,将原本较笼统的 AI Bot 控制细分为 Search、Agent 和 Training 三类。本文记录实际配置过程:保持搜索引擎与 AI Agent 正常访问,将 Training 设置为 Disallow,并启用 Bot Preference Sync,在尽量保留 Google、Bing、ChatGPT、Claude、Perplexity 等搜索与实时发现能力的同时,限制纯模型训练 crawler。文章同时结合 AI Crawl Control 验证实际阻止状态,并记录 Claude-User 受全局策略控制、无法单独放行的现象。
-
在 A Tour of Go 多语言项目中,我发现 Cloudflare 缓存 HIT 时访问很快,但 cold MISS 回源中国大陆阿里云杭州时可能明显变慢,甚至出现超时。最初通过 bounded retry、timeout 和恢复机制提高了 Production 部署成功率,但这些只能改善自己的发布流程,无法真正提升普通用户的访问体验。本文记录我在考虑迁移海外源站、全部切回 EdgeOne 之后,最终选择启用 Cloudflare Smart Tiered Cache 的过程,以及它如何通过 upper tier 缓存和更合理的回源路径减少 origin 请求。开启后,此前异常的 fresh MISS 复测达到 10/10 HTTP 200、单次约 0.3~0.4 秒,同时仍保留 bounded retry 与 fail-closed,应对不可避免的公网瞬态故障。
-
在排查 GA4 首页浏览次数异常偏高、用户互动时长过短的问题时,我从百度搜索结果发现大量 ?p=ID 形式的 WordPress 历史入口被 CDN 错误处理。进一步测试确认,EdgeOne 的 Query String 归一化规则会过滤 p 参数,使文章请求回源成首页并返回 200。修复 p、page_id 保护后,有效文章恢复 301,无效地址恢复 404;GA4 数据显示,过去 30 天 ?p= 相关访问高达 2479 次。
-
此前在测试 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 归一化均工作正常。
-
本文记录一次 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 源站日志验证规则已经生效。
-
在将 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 中文站与英文站的 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 的影响。
-
本文继续记录 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。
