ERROR CATEGORY
Redirect Errors
Troubleshooting guidance for redirect loops, excessive redirect chains, and conflicting HTTP, HTTPS, hostname, application, proxy, or server rules.

About this error category
# Redirect Errors
Redirect errors happen when a request is sent from one URL to another but never reaches a final page, or when it passes through more redirects than necessary. Typical symptoms include ERR_TOO_MANY_REDIRECTS, repeated changes in the address bar, alternating HTTP and HTTPS URLs, or a page that fails to load after several redirects.
Redirects are normally used for valid purposes: enforcing HTTPS, selecting a preferred hostname, moving an old URL, or routing a request to a new path. An error usually appears when redirect decisions conflict between layers or when cached state causes a browser to repeat an outdated result.
Main types of redirect errors
Redirect loops
A redirect loop occurs when the sequence eventually returns to a URL that has already been requested. For example, one rule may redirect HTTP to HTTPS while another treats the HTTPS request as insecure and sends it back to HTTP. The browser follows the cycle until it stops and reports too many redirects.
Loops can also alternate between hostnames, trailing-slash variants, paths, or an application URL and a proxy URL. On WordPress, a loop may begin after an HTTPS migration when the WordPress Address, Site Address, force-SSL setting, proxy handling, and server redirect do not describe the same public URL. See [Too Many Redirects After Moving WordPress to HTTPS](/wordpress-too-many-redirects-https) for that focused case.
Long redirect chains
A redirect chain contains several successive redirects before the request reaches its final destination. An old URL might first redirect to a changed path, then to a preferred hostname, and finally to HTTPS. Chains can be left behind by multiple migrations or overlapping rules.
A chain is different from a loop because it eventually reaches a final response. However, it can make navigation slower and can obscure which rule is responsible for the final destination. The useful diagnostic question is whether each intermediate redirect is still necessary.
Conflicting redirect rules
Redirect behavior may be controlled by a reverse proxy or CDN, hosting platform, web server, content management system, application code, or plugin. These layers can disagree about:
- Whether the original request used HTTP or HTTPS
- Which hostname is canonical
- Whether a path should include a trailing slash
- Whether an old path should be rewritten or redirected
- Which URL should be considered the final application address
A proxy may receive HTTPS from the visitor and forward a different connection scheme to the origin. If the application is not configured to interpret the forwarded scheme correctly, it may issue another HTTPS redirect even though the visitor is already using HTTPS.
Cached redirect or cookie-related behavior
A private browsing test can help separate browser-specific state from a shared configuration problem. Cookies, cached responses, or application session state may preserve an older domain, login flow, or protocol decision. This does not prove that the server configuration is correct; it only shows that the result may depend on stored client state.
If the same URL loops in multiple browsers and on different devices, prioritize the redirect responses and shared configuration rather than repeatedly clearing local data.
How to diagnose a redirect error
- Record the starting URL and exact symptom. Note the scheme, hostname, path, trailing slash, browser message, and whether the address changes repeatedly.
- Test a fresh browser session. Use a private window or clear the affected site’s cookies and cached data. Compare the result with another browser or device when possible.
- Trace the redirect history. Browser developer tools or an HTTP header inspection tool can show each response and its
Locationtarget. Identify the status returned at every step and look for a repeated URL, alternating scheme, changing hostname, or unnecessary intermediate address. - Classify the pattern. A repeated address indicates a loop. A sequence that ends at a page indicates a chain. A switch between HTTP and HTTPS points toward protocol handling; a switch between hostnames or paths points toward canonicalization or migration rules.
- Check the public URL settings. Confirm that the application’s configured site URL matches the scheme and hostname visitors are intended to use. On WordPress, compare the WordPress Address and Site Address instead of changing only one value.
- Review redirect layers from the outside inward. Check the CDN or reverse proxy, hosting settings, web-server rules, application configuration, and redirect or SSL plugins. Look first at the layer that generated the unexpected
Locationresponse. - Isolate recent changes carefully. If the problem began after enabling HTTPS, changing a domain, migrating a site, editing permalinks, or installing a plugin, compare those changes with the redirect sequence. Disable or alter a rule only when you have authorization and a way to restore the previous configuration.
- Retest the original and final URLs. Use a fresh session after each controlled change. Confirm that the original URL reaches the intended destination and that the final URL no longer redirects unnecessarily.
What to check first
The error began after enabling HTTPS
Start with protocol handling. Check where HTTPS is terminated, whether the application receives the expected secure-request information, and whether more than one layer is enforcing HTTPS. Look for a rule that redirects an already-secure request back to HTTP or causes the application to issue a second HTTPS redirect.
The error began after a domain or migration change
Compare the old and new hostnames, scheme, path, and trailing-slash behavior. Review migration redirects and application URL settings together. A partially updated hostname or a redirect that still targets the old domain can create a loop or a long chain.
Only one browser or user is affected
Test without the affected site’s cookies and cached data. If the problem disappears, investigate stored session or redirect state before changing shared server rules. If it persists across browsers and devices, focus on the response headers and common proxy, server, or application configuration.
The redirect chain reaches the page but is unusually long
List every intermediate URL and determine which rule introduced it. Consolidate outdated migration rules where appropriate, while preserving intentional redirects and checking that old URLs still reach the correct final destination.
Vendor documentation to consult
For implementation-specific details, consult the documentation for the web server, reverse proxy or CDN, hosting platform, content management system, and redirect or SSL plugin involved in the request. Search those documents for HTTPS termination, forwarded protocol headers, canonical host redirects, redirect precedence, and cache invalidation. The correct setting depends on which layer receives the original request and which layer generates each redirect.
GUIDE LIBRARY
Error guides in this category
Start with the error you can see, then follow the diagnosis through to verification.
ERR_TOO_MANY_REDIRECTS
`ERR_TOO_MANY_REDIRECTS` means the browser is trapped in a redirect loop instead of reaching the requested page. Common causes include conflicting HTTP/HTTPS or www rule…
Read diagnosis →
Too Many Redirects After Moving WordPress to HTTPS
A WordPress “too many redirects” error after moving to HTTPS usually means WordPress, the web server, a security plugin, or a reverse proxy disagrees about whether the r…
Read diagnosis →Site Administrator
Last reviewed: September 25, 2026
FAQ
Frequently asked questions
What does a redirect loop mean?
A redirect loop means the browser keeps receiving instructions to request another URL and eventually returns to a URL it already visited. The cycle may involve HTTP and HTTPS, two hostnames, different paths, or several configuration layers.
Why can HTTPS cause too many redirects?
An HTTPS loop can occur when the proxy, web server, application, or plugin disagrees about whether the visitor’s request is secure. Trace the redirect responses, confirm where HTTPS is terminated, check the application’s public URL settings, and look for a rule that sends HTTPS back to HTTP or repeats the same HTTPS redirect.
How do I tell a redirect loop from a redirect chain?
Inspect the complete redirect history. A loop repeats a URL or cycles between destinations without reaching a final response. A chain moves through several different URLs and eventually loads the page, although some intermediate redirects may be unnecessary.
Can cookies or cached data cause a redirect error?
They can preserve an outdated session, domain, protocol decision, or cached redirect response. Test in a private window or clear the affected site’s data. If the error occurs across browsers and devices, shared proxy, server, or application configuration is more likely.
Where should I look for the rule causing the redirect?
Start with the Location response that points to the unexpected URL, then identify which layer generated it. Review the CDN or reverse proxy, hosting and web-server rules, application URL settings, and redirect or SSL plugins. A browser address-bar change alone does not identify the responsible layer.
What should I check on WordPress after moving to HTTPS?
Compare the WordPress Address and Site Address, then review force-SSL plugins, web-server HTTPS rules, and proxy HTTPS detection when a proxy is involved. The layers should consistently identify the intended public site as HTTPS. See [Too Many Redirects After Moving WordPress to HTTPS](/wordpress-too-many-redirects-https) for the focused WordPress scenario.