A AumCreate 模板、免费插件、AI 工具与定制开发

wordpress · 2026/10/8 · 更新于 2026/10/8

WordPress外贸网站使用Cloudflare后出现重定向循环错误如何排查

本文详细讲解 WordPress 外贸网站接入 Cloudflare 后出现重定向循环错误的常见原因、排查步骤和解决方案,包括 Cloudflare SSL/TLS 设置、页面规则、WordPress HTTPS 配置以及服务器端跳转规则等,帮助站长快速定位并修复问题。

WordPress 外贸网站使用 Cloudflare 后出现重定向循环错误的排查流程图
图片来源:Pexels / Pixabay

摘要

WordPress 外贸网站接入 Cloudflare 后,常因 HTTPS 配置冲突、页面规则错误或插件设置不当出现重定向循环。本文提供从现象定位到逐步排查的完整思路,并分享避免再次发生的最佳实践。

一、问题现象:访问网站时浏览器提示“重定向次数过多”

当 WordPress 外贸网站接入 Cloudflare 后,部分站长会遇到浏览器报错“ERR_TOO_MANY_REDIRECTS”或“重定向次数过多”。这种情况通常意味着网站陷入了无限循环:浏览器请求一个 URL,服务器响应一个跳转,浏览器跟随跳转,又得到另一个跳转,永远无法到达最终页面。对于外贸站点,这种故障会直接导致客户无法访问,影响询盘和转化。

二、常见原因分析

重定向循环的本质是多个环节对“应该使用 HTTP 还是 HTTPS、带不带 www”等规则产生冲突。结合 Cloudflare 与 WordPress 的常见配置,原因主要集中在以下四个方面:

  • Cloudflare SSL/TLS 模式与源站证书不匹配:如果源站只有 HTTP 或自签名证书,而 Cloudflare 设置为“完全”或“完全(严格)”,可能导致加密握手失败或循环。
  • Cloudflare 页面规则设置错误:例如同时存在多条强制 HTTPS 或跳转规则,互相冲突。
  • WordPress 站点地址与 HTTPS 设置不一致:数据库中的 siteurl 和 home 选项没有统一为 HTTPS,或使用了强制 HTTPS 插件但配置有误。
  • 服务器端重定向配置重复:例如 .htaccess 或 Nginx 配置中已有 HTTPS 跳转,同时 WordPress 插件或 Cloudflare 又执行了一次跳转。

三、排查步骤:从 Cloudflare 到 WordPress 逐层定位

1. 检查 Cloudflare SSL/TLS 设置

登录 Cloudflare 控制台,进入对应域名的“SSL/TLS”选项卡。建议将模式设置为“完全(严格)”,前提是你的源站已经正确配置了有效的 SSL 证书(如 Let's Encrypt)。如果源站没有证书或只有自签名证书,可以暂时选择“灵活”,但长期来看应升级源站证书。切换模式后,清除 Cloudflare 缓存并等待几分钟再测试。

2. 检查 Cloudflare 页面规则

在“规则” > “页面规则”中,查看是否有强制 HTTPS 或重定向相关的规则。例如“Always Use HTTPS”功能已启用,同时又有页面规则将所有 HTTP 请求 301 到 HTTPS,或者规则顺序不当导致循环。尝试暂时禁用所有非必要的重定向规则,然后逐条启用,观察是否复现问题。

3. 检查 WordPress 站点地址与 HTTPS 设置

进入 WordPress 后台“设置” > “常规”,确认“WordPress 地址(URL)”和“站点地址(URL)”是否都使用了 HTTPS 且不带尾随斜杠。如果后台无法访问,可以通过 phpMyAdmin 或 WP-CLI 修改 wp_options 表中的 siteurl 和 home 值。同时检查 wp-config.php 文件中是否硬编码了 WP_HOME 和 WP_SITEURL,确保它们与 HTTPS 一致。

4. 检查 WordPress 插件冲突

部分缓存插件、安全插件或 HTTPS 强制插件(如 Really Simple SSL、WP Force SSL 等)会主动发起跳转。如果 Cloudflare 已经在处理 HTTPS,这些插件可能造成重复跳转。建议在 Cloudflare 开启 HTTPS 相关功能后,停用 WordPress 中的强制 HTTPS 插件,或者将它们设置为“不处理重定向”。可以通过禁用所有插件后逐个启用来定位冲突插件。

5. 检查服务器端重定向配置

如果使用 Apache,检查根目录的 .htaccess 文件;如果使用 Nginx,检查站点配置文件。确保其中没有与 Cloudflare 或 WordPress 重复的 301/302 跳转规则。常见的 WordPress 默认 .htaccess 重写规则本身不会造成循环,但如果你手动添加了 HTTP 到 HTTPS 的跳转,就需要注意与 Cloudflare 的配合。

四、解决方案与修复示例

下面给出一个通用的修复流程:

  • 将 Cloudflare SSL/TLS 模式设置为“完全(严格)”,确保源站有有效证书。
  • 在 Cloudflare 中启用“始终使用 HTTPS”,并删除所有自定义的 HTTP→HTTPS 页面规则,避免重复。
  • 在 WordPress 后台将站点地址统一为 HTTPS,并更新数据库中的 URL。
  • 停用 WordPress 中所有强制 HTTPS 或重定向相关的插件,仅保留 Cloudflare 处理 HTTPS。
  • 检查并清理服务器端的重定向规则,只保留必要的 WordPress 伪静态规则。
  • 清除 Cloudflare 缓存、WordPress 缓存和浏览器缓存后,使用隐私窗口或 curl -I 命令测试响应头,确认不再出现 301 循环。

五、预防重定向循环的最佳实践

为了避免后续再次出现类似问题,建议遵循以下原则:

  • 在接入 Cloudflare 之前,先在源站彻底测试 HTTPS 跳转逻辑。
  • 只在一个层面处理 HTTPS 跳转,推荐由 Cloudflare 统一处理,WordPress 和服务器端不再重复。
  • 定期检查 Cloudflare 页面规则和 WordPress 插件更新,防止规则冲突。
  • 使用监控工具(如 UptimeRobot)对站点进行定期检测,一旦出现重定向循环立即告警。

六、总结与工具推荐

相关文章

相关项目:AumCreate 项目记录