AIWebPageSEO Redirect Checker Fixes Fix Redirects in Plesk / cPanel

How to Fix Redirects in Plesk / cPanel

Plesk and cPanel offer multiple redirect mechanisms: panel UI (domain redirects, URL redirects), .htaccess rules, nginx-additional config. Misconfigurations create redirect chains, loops, or unexpected behaviour. This guide covers panel-managed-server redirects. Pair with redirect checker guide.

Step-by-step: How to fix redirects in Plesk / cPanel

  1. Identify all redirect sources. Panel UI redirects (Plesk: Domain → Hosting Settings → Permanent SEO-safe 301 redirect from www to non-www; cPanel: Redirects). .htaccess rules. nginx-additional configuration. Multiple sources stacking cause chains.
  2. Choose single source of truth. Best practice: use ONE redirect mechanism per pattern. For www-to-non-www: use Plesk's hosting setting OR .htaccess rule, not both. For URL rewrites: use .htaccess (Apache) or nginx-additional (nginx). Document which mechanism handles which patterns.
  3. Configure Plesk www-to-non-www. Plesk → Domain → Hosting Settings → 'Permanent SEO-safe 301 redirect from www to non-www' (or vice versa). One toggle handles the entire pattern. Avoid duplicating in .htaccess.
  4. Audit chained redirects. Tools: HTTP status code checker (curl -I -L follows the chain), screaming frog redirect chains report. Max 1 hop (HTTPS upgrade or www canonicalisation). 2+ hops cause crawl waste and slight ranking signal loss.
  5. Fix common loop patterns. Loops: A → B → A. Causes: conflicting redirects from .htaccess + panel + WordPress plugin. Test by reading rules in order; identify circular references.
  6. Set 301 not 302 for permanent moves. Plesk panel redirects default to 301 (correct). .htaccess: 'Redirect 301 /old /new' (not Redirect 302 or Redirect with no code). 302 = temporary, doesn't pass ranking signals reliably. Use 301 unless genuinely temporary.
  7. Test. curl -I -L https://yoursite.com — check status code chain. screaming frog redirect chains report. Search Console → URL Inspection → checks Google sees correct canonical.
Tip. Document your monthly review cadence, KPIs tracked, and competitive intelligence sources in a single playbook doc. Local SEO, category dynamics, and AI assistant visibility shift fast — having baseline metrics and review schedules in writing prevents drift, and makes hand-offs to new team members fast.

🟢 Audit Plesk/cPanel redirects

Get an audit of redirect chains and loops.

Run Redirect Audit →

Frequently Asked Questions

Plesk redirects vs .htaccess redirects — which wins?

Order: nginx-additional → Plesk panel → .htaccess (where Apache active). nginx-additional applied first; if it redirects, Apache never sees the request. Plesk panel rules typically inject into nginx-additional or top of .htaccess. Stack interactions matter — always test final behaviour.

Why does my Plesk site show 'too many redirects'?

Loop typically. Common cause: SSL configuration redirecting HTTPS → HTTP (or vice versa) infinitely. Check: Plesk SSL/TLS Certificates — is 'Permanent SEO-safe 301 redirect from HTTP to HTTPS' enabled AND .htaccess rule redirecting HTTPS to HTTP both active? Pick one source.

Best way to set up HTTPS redirect on cPanel?

cPanel → SSL/TLS Status → 'Force HTTPS Redirect' toggle (cPanel 80+). Or .htaccess: 'RewriteCond %{HTTPS} off\nRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]'. Use one, not both. Verify with curl.

Should I use Plesk panel for individual URL redirects?

Bulk: use .htaccess (more efficient for many rules). Few: panel UI fine. Plesk has Redirects feature (Domain → Apache & nginx Settings → URL redirect rules) — clean UI but stored in nginx-additional which can be overwritten by panel updates. For critical SEO redirects, prefer .htaccess (durable, version-controlled if you back up panel configs).

How do I bulk-import 1000 redirects on Plesk?

Best: edit .htaccess directly. SSH or Plesk File Manager. Format: 'Redirect 301 /old-path /new-path' per line. For >1000 redirects, consider RewriteMap (Apache) — external file, faster lookup. Test 10-20 redirects manually after import.

Got a problem?