URL redirects send visitors from one URL to another. Use them when you've moved pages, changed domain structure, or want short URLs to expand into longer ones.
In the portal
- Go to Services → click your hosting → Redirects tile.
- Click Add redirect.
- Configure:
- Type — Permanent (301) or Temporary (302).
- Source URL or path — what's being redirected from.
- Destination URL — where it goes.
- Domain — if you have multiple domains on the account, pick which one this rule applies to.
- Save.
The rule takes effect immediately. Behind the scenes, the portal writes an entry to your .htaccess.
301 vs 302
- 301 Permanent — search engines treat the new URL as canonical and transfer SEO ranking from old to new. Use for permanent moves.
- 302 Temporary — search engines keep the old URL indexed and don't pass ranking. Use for actual temporary redirects (maintenance pages, A/B testing, seasonal content).
When in doubt, use 301. Temporary redirects that should have been permanent are a common SEO mistake.
Common redirect scenarios
Force HTTPS
Already done automatically on managed plans, but if you want to verify:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Redirect entire domain to another
olddomain.com → newdomain.com:
RewriteEngine On
RewriteRule ^(.*)$ https://newdomain.com/$1 [L,R=301]
The $1 preserves the path — olddomain.com/about redirects to newdomain.com/about.
Redirect old URLs to new structure
If you renamed /blog/ to /articles/:
RewriteRule ^blog/(.*)$ /articles/$1 [L,R=301]
Redirect a single page
For one-off moves, the portal's redirect tool is simpler than .htaccess. Source: /old-page.html → Destination: /new-page.html. Done.
www to non-www (or vice versa)
Pick one canonical version of your domain:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%{1}/$1 [L,R=301]
This forces all www.yourdomain.com traffic to yourdomain.com. Reverse the logic to force www. instead.
Order matters
Redirects in .htaccess are processed top to bottom. Put more specific rules first:
# Specific rule (matches /old-blog-post)
RewriteRule ^old-blog-post$ /new-post [L,R=301]
# General rule (matches /blog/anything)
RewriteRule ^blog/(.*)$ /articles/$1 [L,R=301]
If you put the general rule first, the specific rule never gets reached.
Testing your redirects
After saving a redirect:
- Hit the source URL in your browser. You should land at the destination.
- Check the response code — use browser developer tools → Network tab. You should see a 301 (or 302) on the source URL.
- Test in incognito to bypass any cached redirects.
For programmatic testing:
curl -I https://yourdomain.com/old-page
The response should be HTTP/1.1 301 Moved Permanently with a Location: https://yourdomain.com/new-page header.
Avoiding redirect chains
A redirect chain is when URL A redirects to B which redirects to C. Each hop adds latency and search engines penalize long chains.
When you change a redirect target, update the source rule directly rather than redirecting through an intermediate:
- Bad:
/old → /interim → /current(three hops). - Good:
/old → /current(one hop).
When you have multiple redirects ending at the same destination, audit them periodically to remove chains.
Removing redirects
Same Redirects tile in the portal: click the trash icon on the rule. The redirect stops immediately; visitors hitting the source URL now see whatever's actually at that URL (the original page, or a 404 if it's been removed).
Power-user note
For complex routing — pattern matching, conditional rewrites, header-based logic — edit .htaccess directly via the file manager. Apache mod_rewrite is the standard tool, deeply documented across the web. The portal's redirect tool covers the common cases; .htaccess covers everything else.