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

从阿里云 DNS 到 Cloudflare 全球加速的完整迁移实战记录

图16:浏览器访问正常,网站全球访问成功

作者:

WordPress CDN 与全球加速实战

图16:浏览器访问正常,网站全球访问成功

(1) 从阿里云 DNS 到 Cloudflare 全球加速的完整迁移实战记录

这一套规则遵循 Cloudflare + WordPress 标准 CDN 架构:

(2) Cloudflare SSL/TLS 与 Cache Rules 配置实战

图12:评论实时生效

(3) WordPress + Cloudflare 推荐配置与 Cache Rules 实战优化(SSL / API / 缓存闭环完整记录)

CDN上线后的boce数据

(4) CDN 上线前后性能对比实测:WordPress 缓存误判修正与真实加速效果验证

【图9:boce 测试 cn-test,灰云直连阿里云 ECS,平均响应 0.478s】

(5) Cloudflare 免费版适合中国大陆 WordPress 主站吗?从缓存 HIT 到灰云直连阿里云 ECS 的实测复盘

【图1:腾讯云 EdgeOne 产品页,选择“立即使用”】

(6) 从 Cloudflare Free 迁移到腾讯云 EdgeOne:一次 WordPress 主站国内外加速实战

【图2:EdgeOne 上线后 boce 第二次测试,平均响应 0.354s,不可访问 2 个】

(7) Cloudflare Free 迁移到 EdgeOne 后到底快了多少?WordPress CDN 三阶段 boce 与 WebPageTest 实测对比

[图2,EdgeOne 昨日 L7 访问流量,显示 6.56 GB]

(8) EdgeOne 流量成本排查:将 WordPress uploads 静态资源迁移到 Cloudflare media 子域名

【图3,EdgeOne 301 请求的 URL Path 排行,集中在 /wp-content/uploads/ 图片路径】

(9) WordPress 图片迁移到 media 子域名后,EdgeOne 仍然出现大量 301 的排查与处理记录

图4:Cloudflare Edge TTL 配置、Cloudflare Browser TTL 配置

(10) WordPress Media CDN 迁移后的 Cloudflare Cache Rules 调整记录

[图4:EdgeOne 按 URL path 开始于 /en/ 筛选后的流量截图]

(11) EdgeOne 流量成本控制决策:是否将英文站从 /en/ 迁移到 en.shuijingwanwq.com

[图3:执行核心升级时返回 524 No Reason Phrase]

(12) WordPress 核心升级反复 524 与“另一更新正在进行”的排查记录

【图 10:新证书 SAN 信息截图,显示已经包含 en.shuijingwanwq.com】

(13) OneinStack 现有 Nginx 虚拟主机追加域名并重签 SSL 证书的一次实操记录

【图 8,curl 验证 www 与 en 的 html lang、canonical 均正确】

(14) WordPress Polylang 英文站从 /en/ 迁移到 en 子域名:W3TC 与 Redis 缓存问题排查

【图 14,最终回归验证:en 首页和文章页 Cloudflare HIT,lang 与 canonical 正确】

(15) 将 Polylang 英文子域名接入 Cloudflare:HTML 缓存、登录绕过与后台入口收敛

【图1:浏览器开发者工具中,旧 /en/ 首页返回 301,随后成功加载 en 子域名英文首页】

(16) WordPress 英文站从 /en/ 迁移到 en 子域名:兼容数千条 Nginx 旧规则并避免二次 301

升级请求经过 EdgeOne,长时间运行的后台请求最终出现超时,数据库中还一度留下了 core_updater.lock

(17) 将 WordPress 后台迁移到独立 admin 子域名:绕过 EdgeOne,解决核心升级 524 超时

【图 1,后台发布新文章后,中文首页仍未显示新文章】

(18) WordPress 多域名架构暂停复盘:en、admin、W3TC 与多 CDN 的可维护性重新评估

图5:media、en 和 admin 尚未拆分时,EdgeOne 单日产生了 6.56GB 流量和 18.32 万次请求

(19) 将 media、en、admin 拆出 EdgeOne 后,我重新估算了网站每月的实际 CDN 成本

图6:英文文章通过 Cloudflare 的海外节点第二次测速结果

(20) 将 media、en、admin 拆出 EdgeOne 后,当前网站性能实测:BOCE、成都移动与 WebPageTest 对比

图13:EdgeOne 调整后的请求缓存状态

(21) WordPress 双 CDN 缓存实测:HTML TTL 统一为 12 小时后,EdgeOne 与 Cloudflare Hit 是否提升?

图3:EdgeOne 中标准文章 URL 与不同随机 Query String 均命中已有缓存

(22) 用 EdgeOne 与 Cloudflare 统一解决 WordPress 随机 Query String 缓存穿透:只优化 canonical 文章 URL

图 2:Cloudflare 明确返回 Invalid SSL certificate

(23) Cloudflare 526 排查实录:acme.sh 的 RSA / ECC 双证书自动续期,如何把英文站 SSL 覆盖坏了

图 2:EdgeOne 规则编辑界面,首页与 Sitemap 在同一条规则中分别设置 2 小时节点缓存 TTL。

(24) WordPress 发布新文章后首页仍是旧内容?EdgeOne 与 Cloudflare 将首页和 Sitemap 缓存缩短到 2 小时实测

图1:EdgeOne 7 月 30 日 L7 请求量异常上涨

(25) EdgeOne 请求数突然暴涨:从 177 万次异常请求定位到百万级 PHP 文件扫描

图 3:EdgeOne 规则保存后的完整结构。文章详情页与公开列表页共用同一条规则。

(26) 从 EdgeOne 524 到 Query String 归一化:WordPress 文章与公开列表页 CDN 缓存优化实战

📌 一、背景:为什么要做 Cloudflare CDN

在本次实践中,我的博客部署在 阿里云 ECS + OneinStack 环境,初始架构如下:

  • WordPress 单机部署
  • 阿里云 DNS 解析
  • 面向国内访问为主(约80%流量)
  • 海外访问逐步增长

随着访问结构变化,我开始引入 Cloudflare:

🌍 目标:提升海外访问速度 + 优化 TTFB + 提升整体稳定性


🧭 二、迁移目标架构

最终希望实现:

Bash
用户  ↓Cloudflare CDN(全球节点)  ↓阿里云 ECS(WordPress)

🧪 三、DNS迁移全过程(核心步骤)


【步骤1】阿里云 DNS 解析确认

图1:当前所有域名解析仍在阿里云 DNS 管理
图1:当前所有域名解析仍在阿里云 DNS 管理

【步骤2】注册 Cloudflare 并添加站点

图2:将 shuijingwanwq.com 添加到 Cloudflare
图2:将 shuijingwanwq.com 添加到 Cloudflare

【步骤3】DNS记录扫描与导入

图3:Cloudflare 自动识别现有 A / CNAME / MX 记录,不过由于不够完整,最终选择了从阿里云导出,再导入
图3:Cloudflare 自动识别现有 A / CNAME / MX 记录,不过由于不够完整,最终选择了从阿里云导出,再导入

【步骤4】DNS记录确认(关键)

图4:检查主域、www、邮箱等是否完整
图4:检查主域、www、邮箱等是否完整

【步骤5】Cloudflare 提供 NS

图5:系统生成 adaline / alfred nameserver
图5:系统生成 adaline / alfred nameserver

【步骤6】修改阿里云 NS

图6:将 vip1/vip2 alidns 替换为 Cloudflare NS
图6:将 vip1/vip2 alidns 替换为 Cloudflare NS

【步骤7】NS切换提交完成


🧠 四、DNS生效验证过程


【步骤8】本地 DNS 检测

图8:dig NS 命令结果(本地),仍显示 alidns,说明尚未生效
图8:dig NS 命令结果(本地),仍显示 alidns,说明尚未生效

【步骤9】公共DNS验证(1.1.1.1)

图9:Cloudflare DNS 查询结果,确认DNS传播状态
图9:Cloudflare DNS 查询结果,确认DNS传播状态

【步骤10】Google DNS 验证

图10:8.8.8.8 查询结果,验证全球传播状态
图10:8.8.8.8 查询结果,验证全球传播状态

⚡ 五、Cloudflare正式生效验证


【步骤11】NS最终生效确认

图11:权威DNS已完全变更
图11:权威DNS已完全变更

【步骤12】HTTP响应头检查

图12:curl -I 返回结果,server: cloudflare 已出现
图12:curl -I 返回结果,server: cloudflare 已出现

【步骤13】301跳转检查

图13:主域跳转 www,说明规范化URL结构成功
图13:主域跳转 www,说明规范化URL结构成功

【步骤14】CF-Ray节点验证

图14:Cloudflare 边缘节点响应,请求已进入SJC节点
图14:Cloudflare 边缘节点响应,请求已进入SJC节点

【步骤15】缓存状态分析

图15:cf-cache-status = DYNAMIC,WordPress动态回源正常
图15:cf-cache-status = DYNAMIC,WordPress动态回源正常

【步骤16】最终访问测试

图16:浏览器访问正常,网站全球访问成功
图16:浏览器访问正常,网站全球访问成功

🌍 六、最终架构状态

Plaintext
用户  ↓Cloudflare(DNS + CDN + TLS + Edge)  ↓阿里云 ECS(WordPress)

🚀 七、关键成果

本次迁移完成:

✔ DNS 完全迁移 Cloudflare
✔ NS 全球生效
✔ CDN 接管成功
✔ HTTPS + HTTP/2 生效
✔ 全球节点加速(SJC等)
✔ WordPress 正常运行


⚡ 八、性能变化(初步观察)

  • 首次请求进入 Cloudflare 边缘节点
  • 301跳转优化完成
  • TTFB 已开始改善趋势
  • 海外访问路径优化完成

🧠 九、经验总结

本次迁移最关键的几点:

✔ 1. DNS迁移 ≠ CDN完成

必须等待 NS 全球生效

✔ 2. Cloudflare必须验证 cf-ray

判断是否真正接管

✔ 3. DNSSEC / NS 状态必须确认

避免“假生效”

✔ 4. WordPress动态页面默认不会缓存

后续需优化 Cache Rules


📌 十、后续优化方向

接下来将继续优化:

  • Cloudflare Cache Rules(HTML缓存)
  • /en/ 国际SEO加速
  • 静态资源缓存策略
  • TTFB优化
  • AdSense加载优化
Cloudflare SSL/TLS 与 Cache Rules 配置实战

Linux 服务器运维、部署与线上故障排查

如果你的网站或后端服务部署在 Linux 服务器上,遇到访问异常、Nginx 配置问题、MySQL / Redis 异常、Docker 服务不可用、磁盘占满、CPU / 内存过高等问题,可以联系我做一次远程排查。

适合以下场景:
✅ 网站打不开或访问不稳定
✅ Nginx / PHP-FPM 配置异常
✅ MySQL / Redis 性能或连接问题
✅ Docker 服务部署与维护
✅ 服务器迁移与环境配置
✅ CPU / 内存 / 磁盘异常排查

服务内容:
✅ Linux 环境检查
✅ 网站部署与迁移
✅ Nginx / PHP-FPM / MySQL / Redis 排查
✅ Docker 配置与维护
✅ 服务器性能分析
✅ 长期远程运维支持

如需咨询,请联系我,并注明:Linux 运维咨询

联系方式:
Telegram:@shuijingwan
微信:13980074657
邮箱:shuijingwanwq@gmail.com

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理