"Too many redirects" means your browser followed a chain of redirects that never resolved — often because two different systems (your CMS, a CDN, a caching plugin, or a proxy) each think the other one is supposed to handle HTTPS, and each keeps redirecting to "fix" it.
01See the actual redirect chain
Don't guess — trace it directly from the command line:
curl -IL https://yourdomain.com
This prints every redirect in the chain with its status code and destination. If you see it bouncing between http:// and https:// repeatedly, that confirms an HTTPS-handling conflict rather than a plugin or page-level redirect rule.
02The most common cause: CDN "Flexible" SSL mode
If you use Cloudflare (or a similar CDN) with SSL set to "Flexible," it terminates HTTPS at the CDN edge but talks to your actual server over plain HTTP. If your server is also configured to force HTTPS (common with WordPress's "Force SSL" plugins), it redirects that incoming HTTP request back to HTTPS — which the CDN then re-terminates and sends as HTTP again, forever.
Fix: in Cloudflare, change SSL mode from "Flexible" to "Full" or "Full (Strict)" so the CDN talks to your origin over real HTTPS too, matching what your server expects.
03Check your WordPress site URL settings
Settings → General — if "WordPress Address" and "Site Address" use http:// while the site is actually being forced to https:// elsewhere, that mismatch alone can cause a loop. Both should use https://.
04Check .htaccess for duplicate redirect rules
Multiple plugins (an SEO plugin, a security plugin, and a caching plugin) sometimes each write their own HTTPS-forcing rule into .htaccess, and having more than one active creates a loop. Look for repeated blocks starting with RewriteCond %{HTTPS} off and remove all but one.
05Clear cache at every layer, in order
After fixing the underlying cause, old redirects can be cached at multiple layers:
- Your CMS's caching plugin (clear it in its settings).
- Your CDN's edge cache (Cloudflare: Caching → Configuration → Purge Everything).
- Your own browser (test in an incognito window to rule this out).