ERR_TOO_MANY_REDIRECTS on Cloudflare

SSL mode set to Flexible makes Cloudflare fetch the origin over plain HTTP; the origin then redirects to HTTPS, Cloudflare follows it back to itself, and the loop never ends.

Why it happens on Cloudflare

SSL mode set to Flexible makes Cloudflare fetch the origin over plain HTTP; the origin then redirects to HTTPS, Cloudflare follows it back to itself, and the loop never ends.

The fix on Cloudflare

SSL/TLS → Overview → set the mode to Full or Full (Strict) and install a certificate on the origin. Flexible mode plus an origin HTTPS redirect is the single most common cause of this error on the web.

If that didn't fix it

Cloudflare has its own failure mode, but ERR_TOO_MANY_REDIRECTS has a wider set of causes. The most common one overall is: The CDN forwards to the origin over HTTP while the origin redirects all HTTP to HTTPS — an infinite loop.

Switch the CDN's SSL mode to Full so the origin leg is encrypted, or make the origin trust the forwarded-proto header instead of the raw scheme.

Check your own domain

The uptime probe returns the full redirect chain, so you can see the exact two URLs bouncing off each other instead of inferring it from behaviour.

Frequently asked questions

Why does ERR_TOO_MANY_REDIRECTS happen on Cloudflare?

SSL mode set to Flexible makes Cloudflare fetch the origin over plain HTTP; the origin then redirects to HTTPS, Cloudflare follows it back to itself, and the loop never ends.

How do I fix ERR_TOO_MANY_REDIRECTS on Cloudflare?

SSL/TLS → Overview → set the mode to Full or Full (Strict) and install a certificate on the origin. Flexible mode plus an origin HTTPS redirect is the single most common cause of this error on the web.

What does ERR_TOO_MANY_REDIRECTS mean?

Two rules are bouncing the request back and forth — most often an HTTPS redirect at the application level fighting a proxy that is forwarding as plain HTTP, so each side thinks the other needs to upgrade.