Back up configuration before changing redirects
Save the database and a copy of .htaccess or server configuration. Do not simultaneously disable several layers; you need to know which rule caused the loop.
Confirm the symptom
Test the exact URL in a private window
Record whether the loop affects http, https, root, www, wp-admin or only one path. A private window avoids a cached redirect but does not fix the underlying configuration.
Where possible, inspect the redirect chain and identify the two URLs repeating. That usually reveals whether the conflict is www, HTTPS, a proxy or an application rule.
Hosting layer
Check Plesk preferred-domain and HTTPS rules
- Log in to Plesk and open Hosting Settings for the domain.
- Note the current Preferred domain setting.
- Confirm the SSL/TLS certificate covers the selected root or www hostname.
- Check whether Permanent SEO-safe 301 redirect from HTTP to HTTPS duplicates a rule in WordPress, .htaccess or a proxy.
- Temporarily remove only the suspected duplicate rule, apply and retest.
Application layer
Make WordPress Home and Site URL agree
In Settings > General, WordPress Address and Site Address normally use the same intended scheme and hostname. If wp-admin cannot open, inspect the corresponding home and siteurl values in the installation's options table or WP Toolkit.
Edit the correct database only
Confirm the database and table prefix from the site's configuration. Do not assume the prefix is wp_ and do not alter unrelated option rows.
Proxy or CDN
Check how HTTPS is reported to WordPress
A proxy can receive HTTPS from the visitor but contact the origin over HTTP. If its SSL mode or forwarded headers conflict with an origin redirect, each side can send the request back to the other. Use an end-to-end secure mode and the provider's supported WordPress configuration.
Rules and plugins
Isolate .htaccess and redirect plugins carefully
- Save a copy of .htaccess.
- Inspect custom Redirect, RewriteRule and HTTPS directives for duplicates.
- If needed, temporarily rename .htaccess and retest once.
- Disable only the likely redirect, cache or security plugin and retest.
- Regenerate normal WordPress rewrite rules from Permalinks after the site opens.
After repair
Restore one canonical route
- http reaches the intended https URL in as few redirects as possible.
- Root and www behaviour match the selected canonical hostname.
- wp-admin, an inside page and forms work.
- No temporary diagnostic setting remains in place.
Still caught in a redirect loop?
Send the domain, exact failing URL, repeating redirect chain, Plesk preferred-domain and HTTPS settings, WordPress Home/Site URL, proxy provider and changes tested. Never send passwords.
Ask the WordPress team