ERR_TOO_MANY_REDIRECTS means your browser is stuck following redirects without reaching the requested webpage. This usually happens when a website repeatedly sends visitors between two URLs, such as HTTP and HTTPS versions of the same page.
The problem can occur on any website, including WordPress, online stores, and custom applications.
If you’re a visitor, start by testing the website in a private browsing window and clearing its cookies. If you own the website, check for conflicting redirects, SSL settings, or application configuration errors.
What Causes ERR_TOO_MANY_REDIRECTS?
A redirect tells your browser to visit another URL. For example, a website may redirect visitors from http://example.com to https://example.com.
Normally, that’s expected behavior. But conflicting rules can create an endless loop:
HTTP → HTTPS → HTTP → HTTPS
Eventually, the browser stops following redirects and displays an error.
Common causes include:
- Conflicting HTTP and HTTPS redirects.
- Incorrect SSL/TLS settings in Cloudflare or another proxy.
- Misconfigured website or WordPress URLs.
- Conflicting caching, security, or redirect plugins.
- Incorrect server redirect rules.
- Browser cookies that trigger repeated login redirects.
Chrome commonly displays ERR_TOO_MANY_REDIRECTS, while other browsers may show a message indicating that the page isn’t redirecting properly.

1. Test the Website in Private Browsing Mode
First, open the affected website in an Incognito or Private window.
If it loads normally there, the issue may involve cookies, an extension, or browser-specific settings.
Try temporarily disabling relevant extensions or clearing cookies for the affected website.
In Chrome, you can open the site’s information and settings controls to manage stored site data. The exact menu varies by browser version.
If the error persists across different browsers and devices, it’s more likely to involve the website’s configuration rather than your browser.
Note: Clearing cookies can resolve certain session-related redirect loops, but it cannot fix conflicting server-side redirects.
2. Check the Website’s Redirect Chain
If you manage the website, identify where its redirects are sending visitors before changing configuration settings.
You can inspect redirects using your browser’s Developer Tools or the curl command.
On a system with curl installed, run:
curl -IL --max-redirs 10 https://example.com
Replace example.com with your domain.
This follows up to ten redirects and displays response headers. Look for repeated Location headers pointing between the same URLs.
For example:
Location: http://example.com/
Location: https://example.com/
Location: http://example.com/
This suggests an HTTP-to-HTTPS redirect conflict.
The result may also reveal loops involving www, non-www, login pages, or trailing slashes.
Once you’ve identified the repeated URLs, investigate the configuration responsible for those redirects.
3. Check SSL/TLS Settings in Cloudflare
Cloudflare users can encounter redirect loops when their SSL/TLS settings conflict with redirects configured on the origin server.
A common example involves Flexible SSL mode.
With Flexible mode, visitors can connect to Cloudflare using HTTPS while Cloudflare connects to the origin over HTTP. If the origin forces every HTTP request back to HTTPS, the requests may loop.
To investigate:
- Sign in to Cloudflare.
- Select the affected domain.
- Open SSL/TLS settings.
- Review the current encryption mode.
- Check whether your origin server redirects HTTP requests to HTTPS.
If the origin has a valid, trusted TLS certificate, Full (strict) is generally the preferred configuration.
Don’t switch modes blindly. Confirm that the origin supports HTTPS and presents a certificate valid for the requested hostname.
Also review Cloudflare Redirect Rules and any additional HTTPS enforcement settings to ensure they don’t conflict.
Incorrect HTTPS settings can also trigger browser security warnings, although these are different from redirect loops. If your browser displays a certificate warning, see our guide on how to fix the “Your Connection Is Not Private” error for the appropriate troubleshooting steps.
4. Fix ERR_TOO_MANY_REDIRECTS in WordPress
WordPress websites can experience redirect loops because of incorrect site addresses, plugins, or conflicting HTTPS settings.
Check WordPress URL Settings
If you can access your dashboard, open:
Settings → General
Review these fields:
- WordPress Address (URL)
- Site Address (URL)
For a typical WordPress installation, both may use:
https://example.com
However, these addresses don’t always need to match. WordPress installed in a subdirectory can legitimately use different values.
If you can’t access wp-admin, check whether the following constants have been defined in wp-config.php:
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );
These are illustrative settings, not values to paste without checking your installation.
If the constants already exist, verify them against your actual WordPress configuration. Don’t add duplicate definitions.
Check WordPress Plugins
If the error started after installing or updating a plugin, investigate plugins responsible for:
- HTTPS enforcement.
- URL redirection.
- Caching.
- Security or login management.
If you cannot access the dashboard, use File Manager or SFTP to temporarily rename the folder of the suspected plugin inside wp-content/plugins.
If the website becomes accessible, investigate that plugin’s settings before restoring it.
Avoid disabling all plugins unless necessary to isolate the problem.
Redirect loops aren’t the only problems that can prevent a WordPress website from loading correctly. For help diagnosing other issues, explore our guide to 30 common WordPress errors and how to fix them.
5. Inspect .htaccess or Nginx Redirect Rules
Incorrect web server rules can also cause ERR_TOO_MANY_REDIRECTS.
On Apache-based hosting, redirects may be defined in the .htaccess file. You’ll commonly find it in your website’s document root.
Before editing it, download a backup.
Check for duplicate or conflicting HTTP-to-HTTPS and domain redirects.
For example, one rule might force HTTPS while another sends visitors back to HTTP.
On Nginx, redirect rules are configured in server configuration files rather than .htaccess.
If your website uses a reverse proxy, also confirm that the application correctly recognizes the original request scheme. Otherwise, it may repeatedly redirect requests it incorrectly believes are using HTTP.
Don’t remove all rewrite rules or replace configuration files without understanding their purpose. Doing so can break existing routes, security settings, or applications.
If your website fails to establish a secure HTTPS connection instead of entering a redirect loop, the problem may involve unsupported TLS settings or certificate configuration. Our guide to fixing ERR_SSL_VERSION_OR_CIPHER_MISMATCH explains how to investigate those issues.
6. Clear Website and CDN Caches
Once you’ve corrected the underlying redirect configuration, clear any caches that may still contain outdated redirects.
Depending on your setup, these may include:
- Website caching plugins.
- Hosting-level page caches.
- CDN caches.
- Browser caches and cookies.
If you’re using Cloudflare, inspect the relevant cached behavior and purge content when appropriate.
Remember that cached permanent redirects may persist in some browsers, so testing with a fresh browser session can help confirm the fix.
7. Contact Your Hosting Provider
If the website still displays ERR_TOO_MANY_REDIRECTS, contact your hosting provider with the information you’ve collected.
Include the affected URL, when the problem started, whether it affects multiple devices, and any recent SSL, plugin, domain, or server configuration changes.
If possible, provide the redirect chain obtained from curl or Developer Tools.
Your hosting provider can help identify redirects configured at the web server or hosting infrastructure level.
How to Prevent Redirect Loops
A few good practices can reduce the risk of future redirect problems:
- Use a consistent preferred domain and HTTPS configuration.
- Avoid enforcing the same redirects through several independent systems.
- Verify reverse proxy and SSL/TLS settings.
- Test redirect rules before deploying them to production.
- Back up configuration files before changing server rules.
- Recheck redirects after migrations or CDN configuration changes.
A redirect should take users to the intended destination, not back to an earlier URL.
Frequently Asked Questions
ERR_TOO_MANY_REDIRECTS means your browser has encountered too many redirects while trying to load a webpage. This usually happens when conflicting website settings repeatedly send visitors between different URLs.
Yes, sometimes. Corrupted or outdated cookies can contribute to login and session-related redirect loops. However, clearing cookies won’t resolve incorrect redirects configured on the website’s server.
Not directly. The error can occur when HTTP and HTTPS redirect settings conflict, particularly with certain CDN or reverse proxy configurations. An invalid SSL/TLS certificate typically produces a different browser warning.
Start by opening the website in Incognito mode. If it works, clear the affected site’s cookies and check browser extensions. If the error persists across multiple browsers, the problem likely originates from the website’s configuration.
Yes. Redirect loops can affect any website, including custom applications and sites running on Apache, Nginx, or cloud hosting platforms. The problem isn’t specific to WordPress.
Conclusion
ERR_TOO_MANY_REDIRECTS occurs when a browser encounters a repeated redirect loop instead of reaching the requested webpage.
Start by ruling out browser-specific problems, then inspect the redirect chain and check HTTPS settings, application configuration, and server redirect rules.
For WordPress websites, pay particular attention to site URLs and plugins. For Cloudflare users, verify that the SSL/TLS mode matches the origin server configuration.
Identifying the conflicting redirect is the most reliable way to resolve the error without making unnecessary changes.