Choose a plan

“Too many redirects”: how to stop the loop

Your browser says “too many redirects” (ERR_TOO_MANY_REDIRECTS)? The causes: https, www, Cloudflare Flexible, the WordPress address.

  • Updated
guide · common errors
Steps
8
Reading time
4min
Sections
4
Start the guide

The message “This page isn't working. … redirected you too many times” (in Chrome, ERR_TOO_MANY_REDIRECTS) means a loop: one rule sends the visitor from address A to address B, and another sends them back from B to A. The browser gives up after a few rounds. The loop almost always comes from two conflicting rules, about https or about www.

What you'll achieve

  • find out which two rules are fighting each other;
  • stop the loop from Enhance, WordPress or Cloudflare;
  • end up with a single clear rule: one address, on https://.

Before you start

  • Clear the website's cookies or open it in a private window: sometimes the browser remembers an old redirect.
  • Check what each address does with a redirect checker (for example httpstatus.io): enter http://domeniul-tau.ro and see each hop in turn. The loop shows up right away: the same two addresses, several times.
  • Log in to Enhance at https://server.nbt-host.com.

The steps

1. The domain goes through Cloudflare with “Flexible” SSL

The most common loop. With the Cloudflare proxy on (the orange cloud) and SSL set to Flexible, Cloudflare requests the website from us over http://, and “Force https” in Enhance sends it back to https:// — endlessly.

  1. In Cloudflare, go to SSL/TLS and choose the Full (strict) mode. Our Let's Encrypt certificate makes this possible.
  2. Or, more simply, set the website's A and CNAME records to DNS only (the gray cloud), as we recommend in How to point your domain to NBT Host.

2. The website address in WordPress differs from the rule in Enhance

WordPress stores its address in the WordPress Address and Site Address settings. If they say http:// while Enhance has “Force https” turned on, or if WordPress is on www and a rule in .htaccess removes the www, the two contradict each other.

  1. In Enhance, in the “Apps” tab, open the website's WordPress page.
  2. Under “General”, next to “Site URL”, click the pencil, enter the exact address you want (for example https://domeniul-tau.ro, with or without www, matching the rest of your rules) and click “Change”.
  3. If you have an SSL or redirect plugin in WordPress (for example Really Simple SSL or a redirects plugin), turn off its redirect to https: Enhance already does it, through “Force https”.

3. Two www rules in .htaccess

An .htaccess brought over from another host may have one rule that adds www and another (or a plugin) that removes it.

  1. In the “Files” tab » public_html, open .htaccess with right-click » “Edit”.
  2. Look for the RewriteCond %{HTTP_HOST} and RewriteRule lines that redirect to or from www.. Keep only one version, as described in Redirecting to HTTPS and www.
  3. Also check the website's “Redirects” tab: a redirect set there for the whole domain can clash with the rule in .htaccess.

4. An alias redirecting to itself

An alias with “Redirect to the primary domain” checked sends visitors to the main domain. If the main domain in turn sends them to the alias (through a rule in .htaccess or in WordPress), you get a loop. Choose a single main domain and point all the others to it (see Subdomains and additional domains in Enhance).

5. Check

Open the addresses http://domeniul-tau.ro, http://www.domeniul-tau.ro, https://domeniul-tau.ro and https://www.domeniul-tau.ro again, in a private window. All four must reach the same final address, in at most two hops.

If something doesn't work

  • I can't log in to WordPress to change the address. Change it from Enhance, as in step 2, without logging in to WordPress.
  • The loop only appears on /wp-admin. It is usually a security or cache plugin. Deactivate it from Enhance, under “Plugins”, with “Deactivate”, and clear the cache.
  • I turned off “Force https” and it still doesn't work. The loop comes from somewhere else: Cloudflare, .htaccess or WordPress. Go through steps 1–3 again. Once the loop is gone, turn “Force https” back on.
  • I can't find the cause. Send us the website address and the result from the redirect checker.
Support

Stuck? We'll do it together.

Tell us which step isn't working and, if you can, send a screenshot. We reply during business hours.

Phone and WhatsApp+40 775 396 021
HoursMonday–Friday, 9:00–18:00 Romanian time (EET/EEST)

Never send us your password on WhatsApp or by email. What information helps us solve it on the first try: how to ask for help.