Hostking South Africa — web hosting and domains

Before you start

Moving a website is mostly about doing things in the right order. Almost every migration that goes wrong does so for one of three reasons: the DNS was changed before the site was tested, the email was forgotten, or the old account was cancelled too early.

Set aside about two hours for a small site. You will need access to your current hosting control panel, your domain registrar, and your new hosting account. If you do not have all three, get them before you begin — discovering halfway through that nobody knows the registrar login is a bad moment.

Prefer not to do this yourself? We migrate websites to Hostking free of charge, and we plan each move to avoid downtime. Ask us to handle it.

1. Take a full backup first

Before touching anything, download a complete copy of your site: all files, every database, and your email. Most control panels have a one-click backup. Keep it on your own computer, not just on the server you are about to leave — if the old host suspends the account mid-move, anything left there goes with it.

  • Files: everything in public_html or www
  • Databases: export each one as an .sql file
  • Email: download messages to your computer if you use POP or IMAP
  • Note your DNS records before you change anything
Take a full backup first

2. Set up the new hosting account

Create the account at your new host but do not point your domain at it yet. You want the site fully working on the new server before any visitor is sent there. Most hosts, including us, give you a temporary URL or a subdomain so you can test everything privately.

  • Create the hosting account and note the server details
  • Set up the same PHP version your site currently runs
  • Create the databases and database users you will need
  • Do not change your domain yet
Set up the new hosting account

3. Move the files and databases

Upload your files to the new server, then import each database and update your site configuration to point at the new database name, user and password. On WordPress that is wp-config.php; on Joomla it is configuration.php. This is where most self-managed migrations go wrong — the files arrive but the database credentials still point at the old server.

  • Upload files via FTP, SFTP or the file manager
  • Import each .sql file into its matching new database
  • Update the config file with the new database details
  • Check file permissions if anything looks broken
Move the files and databases

4. Recreate your email accounts

Email is the part people forget, and it is the part that causes real damage. Every mailbox on the old server needs recreating on the new one before DNS changes, or mail sent during the switch will bounce or land somewhere you cannot reach.

  • Create every mailbox with the same address
  • Set the same forwarders and autoresponders
  • Import old messages if you use IMAP
  • Test sending and receiving before you move on
Recreate your email accounts

5. Test on the new server

Use the temporary URL or edit your computer’s hosts file to preview the site on the new server while the live domain still points at the old one. Click through properly — not just the homepage.

  • Every main page loads without errors
  • Contact and enquiry forms actually send
  • Images and downloads all resolve
  • Admin or client login works
  • Any payment or booking flow completes
Test on the new server

6. Lower your DNS TTL, then switch

A day before the switch, drop your DNS TTL to 300 seconds. That tells the internet to re-check your records every five minutes instead of every few hours, so when you do change the A record the move happens quickly rather than trickling through over a day. Then update your nameservers or A record to the new host.

  • Set TTL to 300 seconds, 24 hours ahead
  • Change the A record or nameservers to the new host
  • Install the SSL certificate on the new server
  • Watch both servers — traffic will arrive at each for a while
Lower your DNS TTL, then switch

7. Wait, verify, then cancel

DNS propagation usually settles within a few hours, though it can take up to 48. Keep the old account alive until you are certain nothing is still being served from it. Cancelling early is the single most expensive mistake in a migration, because the data is gone and the backup you took in step one becomes the only copy.

  • Confirm the site loads from the new server
  • Confirm email is arriving at the new mailboxes
  • Check your analytics for errors or 404s
  • Only then cancel the old hosting — wait at least a week
Wait, verify, then cancel

What usually goes wrong

Email stops working. The mailboxes were never recreated on the new server, so mail bounces from the moment DNS changes. Recreate every account in step four, before you switch.

The site loads but nothing saves. The files moved, the database did not — or the config file still points at the old database. Check your wp-config.php or configuration.php credentials.

Mixed content warnings after the move. The SSL certificate was not installed on the new server before DNS switched. Install it in step six, not afterwards.

Everything disappears. The old hosting was cancelled before propagation finished. Wait a full week, and keep the backup from step one regardless.

We’ll Move Your Website for Free

If you would rather not do any of the above, our team migrates your entire site — files, databases and email — at no cost, and we plan every migration to avoid downtime. You keep your existing site exactly as it is; only the server underneath changes.

  • 100% free website migration
  • All files, databases and emails moved
  • Transfers planned to avoid downtime
  • Free SSL installed after migration

See hosting plans Talk to our team

Hostking team handling a website migration

Website Migration — Common Questions