The ERR_TOO_MANY_REDIRECTS
error indicates that the page you are trying to visit is caught in a “redirect loop”. It means that your browser is being infinitely redirected to a different page each time it hits the requested URL. This can happen while trying to login or while accessing certain protected pages. After many attempts to land on the correct page, your browser still cannot successfully load your website so this error is displayed.
If you are experiencing this error on your site, continue reading to learn how to resolve and or debug the ERR_TOO_MANY_REDIRECTS
error.
Reason 1: Incorrect Page Settings in Paid Memberships Pro
The most common reason why you may be experiencing this error on your PMPro powered site is because your PMPro pages are not properly set up. Similarly, you may be using another plugin that integrates with PMPro, an LMS for example, and you are restricting a PMPro page in more than one place.
- Confirm that all PMPro pages under Memberships > Settings > Page Settings are assigned.
- Each target page in the list needs to contain the expected shortcode or block. It is possible to build your own Membership Levels and Membership Cancel page. These are the only two pages that you can safely remove the default shortcode or block from.
- Ensure the
pmpro_billing
shortcode is not on the same page as the Members Account Page shortcode. - Verify that none of these pages have any membership levels set in the “Require Membership” metabox.
These pages all work together to allow PMPro to function as expected for your membership site. If one page is not set, this could cause redirect loops to happen.
Reason 2: SSL Redirect Errors
Another reason this error could occur is if you are forcing SSL in your site and have enabled the settings to “Force SSL” on the Memberships > Settings > Security page in the WordPress dashboard. If you have more than one plugin trying to redirect to SSL or have custom code in place related to SSL, this will cause the ERR_TOO_MANY_REDIRECTS
error.
- Try disabling the “Force SSL” settings inside PMPro by navigating to Memberships > Settings > Security.
- Locate the “SSL Settings” section and set “Force SSL” to “No“.
- Check the frontend page on your site that was having the redirect error and see if this has fixed it.
- If the error persists, you may need to debug SSL issues further. Please refer to our guide on troubleshooting HTTPS/SSL issues.
Still experiencing the error?
If you are still experiencing this error, install and activate the Debug WP Redirect plugin to debug redirect issues. This plugin is useful when you have a lot of plugins and theme functions interacting with each other. It will help you determine which one is redirecting and where it redirects to.
Once activated, add define( 'DEBUG_WP_REDIRECT', true );
and define( 'DEBUG_WP_REDIRECT_ADMIN', true );
to your wp-config.php
file. This will allow the debug plugin to output information about each wp_redirect
call both on the frontend and in your admin dashboard.
In some cases, you may be unable to access your WordPress admin dashboard to install this plugin due to the redirect errors. If this is the case, deactivate (do not delete) Paid Memberships Pro and any other plugins that may be causing the redirect. To do this, change the directory name of each plugin via FTP or cPanel. Be sure to rename and reactivate all desired plugins once you have activated the Debug WP Redirect plugin. If you do not reactivate the problem plugins, you will not be able to debug and resolve the error.
Using the Debug WP Redirect Plugin
At this point in the debug process, you should have done the following:
- You have confirmed that the PMPro pages are all properly set up, contain the right shortcode or block, and are not restricted by membership level.
- You have debugged SSL-related issues with your settings and at the server level.
- You have successfully installed and activated the Debug WP Redirect plugin, renamed the plugin folders, if adjusted, and reactivated every plugin you want to use in your membership website.
Now, visit the page that was throwing the redirect error. You should get a redirect debug log on your dashboard the first time the redirect occurs. This log will allow you to trace and figure out which of your plugins is causing this redirect.
Once you know which plugin is causing the redirect, deactivate the plugin or find any functions that hook on template_redirect
or wp_redirect
in the plugin and comment those lines out of the code.
Now, try visiting the same page that caused the error again. This will help you determine whether a second plugin is causing a redirect. Continue this process of forcing the redirect, identifying the plugin to “blame” and removing the code until the redirect error is gone.
Once the redirect is gone, you will know which single plugin or multiple plugins are fighting over the redirect. The recommendations on how to fix this issue will vary depending on the plugins in the mix and what exactly is happening.
- The fix usually includes some kind of settings change to avoid the issue.
- You may need a developer to fix one of the plugins to respect the other.
- You may need some custom code to detect a case that might loop and selectively unhook the filters for one of the plugins.
If you are having the ERR_TOO_MANY_REDIRECTS
error and this document has not helped you to figure things out, please post to our member forums and we will help you out there. We will also update this post over time as new information comes out.