首页 > Wordpress > 正文

WordPress 出现 Too Many Redirects 怎么办?五步定位重定向循环

fenij 2026-08-11 52 Wordpress

WordPress 后台进不去、前台页面刷出来一片「ERR_TOO_MANY_REDIRECTS」,浏览器直接打不开——这是把整站搞挂、又特别容易被绕进去的故障。名字听起来吓人,其实九成就是「设置不一致」或「两个东西在互相重定向」。

第一步:先看完整报错

Chrome 浏览器底下那行英文别忽略:ERR_TOO_MANY_REDIRECTS 直译就是「太多重定向」,意思是浏览器跟着 301/302 跳了 20 多次还没落到终点,放弃了。Safari 显示「无法建立安全连接」,Firefox 显示「重定向过多」——本质都是同一回事。

🔁
跳转循环
A → B → A → B → …
🌐
HTTP ↔ HTTPS
www ↔ 不带 www 互跳
🛡️
SSL 插件冲突
两层 SSL 强制跳转打架

第二步:把 URL 和站点地址对齐

九成的根因在这里。进入 wp-config.php(FTP 能直接改文件),确认两个值:

define('WP_HOME', 'https://yourdomain.com');
define('WP_SITEURL', 'https://yourdomain.com');

两个必须完全一致(http/https、有没有 www、结尾有没有斜杠),连大小写都不能差。曾经有客户把 Home 写成 HTTPS://Domain.com,SiteURL 写成 https://domain.com,网站直接转圈。

第三步:清掉缓存和 Cookie

浏览器侧:打开无痕窗口再访问一次,能进就说明是 cookie 在作怪,浏览器控制台 → Application → Cookies 全删。服务端:

rm -rf wp-content/cache/*(WP Super Cache / W3 Total Cache / LiteSpeed Cache 这些插件的目录)
如果有 Redis 或 Memcached 缓存,重启一下:
redis-cli FLUSHDB

第四步:检查 SSL 插件和服务器跳转规则

很多用户装了 Really Simple SSL 之类的插件,让所有 HTTP 强制跳到 HTTPS。但如果同时 Nginx/Apache 配置里也写了 301 跳转,两层叠在一起就死循环了。

层级 位置 典型症状
WordPress URL 设置 wp-config.php / 后台 Home 和 SiteURL 不一致
SSL 插件 Really Simple SSL 等 和服务器规则双重强制
服务器配置 Nginx / Apache .htaccess rewrite 规则写错或重复
CDN / 反代 Cloudflare / Nginx 反代 Flexible SSL 模式下 HTTPS 回源 HTTP 死跳

Cloudflare 用户特别注意:SSL/TLS 模式选 Full(Strict),不要选 Flexible。Flexible 模式下 Cloudflare 用 HTTP 回源,源站又强制跳 HTTPS,请求就在 CDN 和源站之间永远跳。

第五步:临时禁用所有插件和切换主题

还是转圈?FTP 进 wp-content 把 plugins 文件夹改名,等于一键关闭所有插件;同时把当前主题文件夹改名,WP 自动用默认主题。要是网站回来了,挨个启用插件定位元凶,常见是缓存类、SSL 类、安全类插件里有 redirect 钩子打架。

常见问题

Q:明明改完 wp-config 了还是 ERR_TOO_MANY_REDIRECTS?
A:很大概率是 Cloudflare 在中间又加了一层跳转。临时把 Cloudflare 的「始终使用 HTTPS」关掉试一下;或者把 DNS 临时切回源站(开发模式),看看绕过 CDN 后是否正常。

Q:没有装 SSL 插件,服务器也没配 rewrite,怎么会循环?
A:检查 wp-config.php 里有没有被加进奇怪的代理定义,比如有些反向代理插件会自动塞 WP_PROXY_HOST。再看一下 .htaccess(Nginx 是 try_files 那段)有没有冗余规则。

Q:恢复之后怎么防止再发生?
A:所有跳转规则只在服务器侧(Nginx / .htaccess)写一份;WP 侧不动;CDN 选 Full 或 Full (Strict),别用 Flexible;启用 SSL 前先在 wp-config.php 里把 Home/SiteURL 改成 HTTPS。

按上面五步走下来基本能定位到问题在「设置」「缓存」「SSL 插件」「CDN」「主题插件」这五层中的哪一层。如果还卡着,把 wp-config.php + .htaccess(或 Nginx 站点配置)相关行贴到 fenij.com 留言,我帮你看下一手排查方向。

排错自查清单

  • ☐ 第一步:先看完整报错:Chrome 浏览器底下那行英文别忽略:ERR_TOO_MANY_REDIRECTS 直译就是「太多重定向」,
  • ☐ 第二步:把 URL 和站点地址对齐:九成的根因在这里。进入 wp-config.php(FTP 能直接改文件),确认两个值:
  • ☐ 第三步:清掉缓存和 Cookie:浏览器侧:打开无痕窗口再访问一次,能进就说明是 cookie 在作怪,浏览器控制台 → Application
  • ☐ 第四步:检查 SSL 插件和服务器跳转规则:很多用户装了 Really Simple SSL 之类的插件,让所有 HTTP 强制跳到 HTTPS。但如果同
  • ☐ 第五步:临时禁用所有插件和切换主题:还是转圈?FTP 进 wp-content 把 plugins 文件夹改名,等于一键关闭所有插件;同时把当前主
  • ☐ 常见问题:Q:明明改完 wp-config 了还是 ERR_TOO_MANY_REDIRECTS?A:很大概率是 Clo

关键命令速查

  • define('WP_HOME', 'https://yourdomain.com');
  • define('WP_SITEURL', 'https://yourdomain.com');
  • HTTPS://Domain.com
  • https://domain.com
  • rm -rf wp-content/cache/*
  • redis-cli FLUSHDB

相关延伸

更系统的排查思路,见 WordPress 分类归档

相关完整手册

系统化的排查与配置思路,建议顺手收藏这几篇完整手册: