We come across a lot of different errors when working with WordPress, and ERR_TOO_MANY_REDIRECTS is one of the most common errors. It usually appears after the updates in the WordPress site due to an incorrect redirect configuration on the server or due to incorrect settings of third-party services. However, you do not need to worry. This ERR_TOO_MANY_REDIRECTS error is very easy to fix. Read the recommendations below, which will help you to solve this problem.
What kind of error is this: ERR_TOO_MANY_REDIRECTS?
As it follows from the name ERR_TOO_MANY_REDIRECTS, the essence of the error lies in the fact that your site enters an infinite redirect cycle. Usually, the site stops working when URL 1 points to URL 2 and vice versa, or the domain redirects you too many times. Unlike other errors, this problem itself is not solved, so you have to take some actions to fix it.
This redirect loop error can stem from various sources:
- Misconfiguration of your WordPress website address, which may result from pointing to the wrong domain, typos in the domain name, or issues with the www prefix.
- Browser cookies and cache corruption are often the most common culprits and the simplest to resolve.
- Problems arise from a faulty WordPress plugin, typically due to corruption, outdated versions, or misconfigurations.
- Incorrect HTTPS settings are often caused by misconfigured SSL certificates or HTTPS redirect rules.
- Misconfigured server settings, which can occur when the .htaccess file contains erroneous variables.
- Issues associated with third-party services, such as misconfigured content delivery networks (CDNs).
There are multiple variations of this error, depending on the browser that you are working with.
Browsers Where ERR_TOO_MANY_REDIRECTS Appears
Google Chrome
In Google Chrome, this error is sometimes displayed as ERR_TOO_MANY_REDIRECTS or can also be “This webpage has a redirect loop problem”.
Error text: This page is not working. domain.com redirected you too many times.
Mozilla Firefox
In Mozilla Firefox, ERR_TOO_MANY_REDIRECTS error is displayed as “The page isn’t redirecting properly”.
Error text: Firefox has identified that the server is redirecting the request for the mentioned address in a manner that will never be complete.
Microsoft Edge
In Edge, the ERR_TOO_MANY_REDIRECTS error is displayed as “Hmmm … cannot reach this page”. Which, of course, does not explain the essence of the problem.
Safari
In Safari, you might encounter an error message that reads, “Safari can’t open the page ‒ Too many redirects occurred while trying to open ‘example.com.’ This can happen when you try to access a page that’s redirected to another page, which in turn redirects back to the original page.”
Opera
Opera’s ERR_TOO_MANY_REDIRECTS error message closely resembles Chrome’s, stating, “This page isn’t working. ‘example.com’ redirected you too many times,” accompanied by the ERR_TOO_MANY_REDIRECTS error label.
Recommendations to fix ERR_TOO_MANY_REDIRECTS
1. Clearing cookies for the website
Google and Mozilla recommend trying to clear cookies, which is displayed as recommendations on the page with an error. Cookies can sometimes contain erroneous data, which leads to the appearance of ERR_TOO_MANY_REDIRECTS. You can try to follow this recommendation, even if you notice such a mistake on a site that does not belong to you (to access it).
Cookie files retain the status of “logged in” on sites and store various settings, so we recommend that you simply delete the cookies for the site that led to the error. This does not affect your other sessions and other sites that you often visit.
Follow these steps to clear the cookies in Chrome:
- In Google Chrome, go to the button with three dots in the upper right corner of the page. Click on Settings.
- Click on Privacy and Security –>> Clear Browsing Data –>> Advanced.
- Click on Cookies and other site data.
- Here, we are looking for the domain for which the ERR_TOO_MANY_REDIRECTS error was displayed. Click on clear data that are currently stored on your computer for this domain.
- Visit the site again to see if the error has been resolved.
2. Clean the server, proxy and browser cache
Redirection cycles are the answers that you can cache, so we recommend you try to clear the cache on your WordPress site, in third-party proxy services, and in your browser.
- Clean the server cache
Many WordPress web hosts offer their tools to clear the cache on your WordPress site. This is usually done from the control panel of your hosting since the error most likely will not permit entry to the WordPress console.
- Clean the proxy cache
If you use a reverse proxy server, such as Cloudflare or Sucuri, you can try to clear their cache. To clear the Cloudflare cache, go to the service console, select Caching, and click Purge Everything. To clear the Sucuri cache, enter the service console, select Performance, and click Clear Cache.
- Clearing the browser cache
If you want to check and see if the problem is related to the browser cache, you can simply open your browser in incognito mode. Either test another browser to see if the error ERR_TOO_MANY_REDIRECTS has disappeared or not.
If the problem is caused by the browser cache, you will need to clear the cache. It is not that difficult. Follow this easy tutorial to clear the Browser Cache in all major browsers.
3. Determine the nature of the cycle of redirects
If cleaning the cache does not help, you can find out the reason for the redirect loop. The free Redirect Checker tool will help you understand exactly what happened. The same can be done through cURL.
An extension for Chrome called Redirect Path can also be very useful. It shows the information on all redirects that occurred on the site (for a specific URL or page).
4. Checking HTTPS settings
Another reason for the ERR_TOO_MANY_REDIRECTS error is HTTPS settings. We very often saw that the error occurs after the user moved his site to HTTPS and either did not complete the process or set up something incorrectly.
- Do not migrate to HTTPS without an SSL certificate
We face this problem on a regular basis. If you do not install the SSL certificate on the server and at the same time force your site to load on HTTPS, you will immediately enter an endless loop of redirects. To fix this, just install the SSL certificate.
We recommend that you verify that the SSL installation is correct. SSL / TLS certificates require you to install not only the primary certificate but also the root and intermediate certificates (chains). All of them must be correctly installed.
Go to the SSL verification tool, enter your domain, and then run the scan. To scan an SSL / TLS configuration on your site it may take some time (about a minute).
- Do not use the plugins for SSL and update the links prescribed in the code.
There are free plugins that allow automatic redirection to HTTPS. However, we do not recommend this method because third-party plugins lead to additional problems and compatibility issues. This is only a temporary solution. You must manually update all HTTP links in the code. To do this, you will need to perform a search and replace in WordPress.
- Review the redirects from HTTP to HTTPS on the servers
It is possible that the redirect rules to HTTPS are incorrectly configured on the server.
Redirect from HTTP to HTTPS for Nginx
If your web server accesses Nginx, you can easily redirect all traffic from HTTP to HTTPS using the following code that you need to add to the Nginx configuration file. The recommended method for redirecting WordPress to Nginx is:
server { listen 80; server_name domain.com www.domain.com; return 301 https://yourdomain.com$request_uri; }
Redirect from HTTP to HTTPS for Apache
If your web server uses Apache, then you can redirect your traffic from HTTP to HTTPS using the following code that you need to add to the .htaccess file. The recommended method for redirecting WordPress to Apache is:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- Check for the error “Too Many HTTPS Redirects”.
You may have too many HTTPS redirects. You can check this with a special tool called Redirect Mapper. Below is an example of redirects that are not configured correctly. You can observe that there are duplicate HTTPS redirects that occur both in www and non-www versions.
5. Check third-party services
ERR_TOO_MANY_REDIRECTS error is often associated with reverse proxy services, such as Cloudflare. This is usually due to the inclusion of the Flexible SSL option if you already have an SSL certificate installed on your server with WordPress. Why? When Flexible SSL is selected, all requests to your hosting server are transmitted via HTTP. Most likely, your hosting server already has a redirect with HTTP to HTTPS, and therefore, a cycle of redirects occurs.
To fix this, you need to change the Cloudflare Crypto settings from Flexible to Full or Full (strict).
Also, you can use their ‘Always Use HTTPS’ rules for pages to redirect all users to HTTPS without creating a loop. Another thing you need to follow when working with Cloudflare is to follow the redirection rules for URLs used for redirection. Be careful with creating a redirect for domains that indicate themselves as the destination. This can lead to an endless redirect or ERR_TOO_MANY_REDIRECTS error.
6. Check the settings of your WordPress website
Make sure to review the configurations of your WordPress website, paying special attention to two crucial fields that require accurate definitions. Additionally, be cautious about using an incorrect prefix that doesn’t align with your site’s URL, whether it includes “www” or not.
- WordPress Address (URL): This is the web address used to access your blog.
- Site Address (URL): This is the web address used to access the core WordPress files.
It’s essential that both of these URLs match unless, of course, you’ve relocated WordPress to a different directory.
The wp-config.php file is usually located at the root of your WordPress site. It can be accessed via FTP, SSH, or WP-CLI. To overwrite WP_HOME and WP_SITEURL, simply enter the following code at the top of wp-config.php by specifying your domain:
define('WP_HOME','https://yourdomain.com');
define('WP_SITEURL','https://yourdomain.com');
Below is an example of how your wp-config.php will look after all the changes:
After manually setting the values for the URL, you can go to your site and check if the ERR_TOO_MANY_REDIRECTS error has disappeared.
7. Temporarily disable WordPress plugins
Temporarily deactivating WordPress plugins can serve as a swift troubleshooting method. If any of your plugins are responsible for ERR_TOO_MANY_REDIRECTS error, they could potentially trigger a redirect loop.
Please bear in mind that merely disabling a plugin won’t result in data loss. However, you may temporarily lose access to the WordPress dashboard. To proceed, you’ll have to access your server via SFTP (Secure File Transfer Protocol) and rename the plugins folder. Afterward, check your website’s functionality.
If this approach resolves the issue of ERR_TOO_MANY_REDIRECTS error, you should systematically test each installed plugin. Rename the plugin folder into its original “plugin” name and then proceed to rename individual plugin folders one by one until you identify the problematic one. Alternatively, you can perform this testing on a separate test site for a safer evaluation.
8. Check the redirects on the server
Apart from implementing HTTP to HTTPS redirects on your server, it’s crucial to inspect for any unintended redirects that might be causing ERR_TOO_MANY_REDIRECTS error. A single improper 301 redirect could potentially disrupt the entire website’s functionality. Typically, these redirects are found within your server’s configuration files.
- Apache
When dealing with web hosting that runs Apache, it’s essential to verify the .htaccess file for any incorrect rules. To do this, follow the steps below to create a new file from scratch:
Log in to your site through FTP or SSH, and then rename the existing .htaccess file to .htaccess_old. This action ensures that you always have a backup copy of the file.
To recreate the .htaccess file, you can simply re-save your permanent links settings in WordPress. However, if you encounter an “ERR_TOO_MANY_REDIRECTS” error, chances are you won’t have access to your WordPress console. In such a scenario, you can create a new .htaccess file and input the following content into it. Afterward, upload this file to your server. The standard settings for the file are as follows:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
In the WordPress code, you can find other examples, in particular, the standard .htaccess for multisite.
- Nginx Configuration
If your hosting uses Nginx, then configuring the configuration file will be a bit more complicated since the config can be different depending on the hosting provider used. We recommend, in this case, to write in support of hosting and ask them to check the configuration file for the things that can cause the cycle of redirects or ERR_TOO_MANY_REDIRECTS error.
In conclusion,
Resolving the ERR_TOO_MANY_REDIRECT issue on your WordPress website is crucial to ensure a seamless and error-free user experience. This frustrating problem often stems from misconfigurations in your settings, conflicting plugins, or issues with your server. By following the steps outlined in this blog, you can recognize the root cause of the problem and implement the necessary fixes.
Remember to regularly back up your website before making any changes, and if you’re not comfortable with technical aspects, seek the assistance of a web developer or hosting support team. With patience and persistence, you can conquer ERR_TOO_MANY_REDIRECT and keep your WordPress website running smoothly for your visitors.