"ERR_TOO_MANY_REDIRECTS" or "This page isn't working - domain redirected you too many times" — your browser detected an infinite redirect loop. WordPress redirected the request more than ~20 times, triggering this browser safety stop.
Most common causes we diagnose:
Systematic, fast, and safe process:
Via WP-CLI: wp option update siteurl https://yourdomain.com && wp option update home https://yourdomain.com. If using Cloudflare, also add $_SERVER["HTTPS"] = "on"; to wp-config.php.
In Cloudflare dashboard: SSL/TLS > Overview > change from "Flexible" to "Full (Strict)". Flexible SSL creates an HTTP loop between Cloudflare and your server.
Temporarily disable Redirection, Yoast redirect manager, or 301 Redirects plugin. Check .htaccess for RewriteRule redirect chains that could cause loops.
Our WordPress expert responds in minutes.
Most common cause: siteurl still has http:// but server rules force https://, creating a loop. Also check if Cloudflare SSL mode is set to Flexible (change it to Full Strict). Update siteurl and home to https:// to resolve.
Page-specific loops are usually from: a redirect plugin entry creating a circular redirect for that URL, a Yoast/AIOSEO redirect for that slug conflicting with the actual page, or a category/taxonomy archive conflicting with a page slug.
Your browser detected an infinite redirect loop: page A redirects to B, B redirects back to A. After 20 redirects, browser gives up to prevent crash. It's always a server-side configuration issue, not a browser problem.
Common triggers: SSL certificate change/install, hosting migration, Cloudflare proxy mode change, plugin update modifying redirects, WordPress URL settings changed automatically by misbehaving plugin.
We use curl: `curl -IL https://yoursite.com` — this shows every redirect step. The pattern reveals where the loop is. Browser dev tools (Network tab) show the same with timestamps.
Most common cause. WordPress thinks it's HTTP, redirects all requests to HTTPS via .htaccess, but then HTTPS request still triggers HTTP redirect. We force HTTPS consistently in WP_HOME/WP_SITEURL and .htaccess.
Yes. Cloudflare 'Flexible SSL' mode means: visitor → Cloudflare (HTTPS) → Origin (HTTP). If WordPress also redirects HTTP to HTTPS, an infinite loop forms. We use 'Full (Strict)' SSL mode.
If .htaccess contains a wrong RewriteRule yes. We carefully audit .htaccess for: HTTP→HTTPS redirects, www/non-www redirects, custom redirect rules. Conflicting rules cause loops.
Page-specific redirects from a redirect plugin (Redirection, Rank Math) can loop if pointing to a URL that redirects back. We audit the redirects table to find the loop.
Rarely but yes. WordPress's redirect_canonical function may conflict with custom rewrites. We can disable canonical redirects with `remove_filter('template_redirect', 'redirect_canonical')` to test.
All users — the loop happens at HTTP request level before authentication. Sometimes admin sees a different loop because of admin-specific redirects (force_ssl_admin).
Yes. Really Simple SSL + Better SSL + manual .htaccess redirects = multiple redirect rules conflicting. We use ONE SSL plugin (or none) and configure .htaccess manually for predictability.
Sometimes — for cached redirects. But the underlying server config issue remains. We always fix server-side, then clear browser cache to confirm.
Yes. If you migrated from yoursite.bluehost.com to yoursite.com, but the old subdomain still redirects to the new domain, and the new domain doesn't have proper config, loops form.
Five layers: 1) one source of truth for HTTPS redirects (either .htaccess OR plugin, not both), 2) Cloudflare 'Full (Strict)' mode, 3) consistent WP_HOME/WP_SITEURL, 4) test major changes in staging, 5) document custom redirects.
Site showing a critical error? We diagnose and fix it fast — same day, no data loss.
Response in minutes. No data loss. No diagnosis charge.
wpfix.blimx.com