What you will do
You will move a WordPress site to offshore hosting the safe way: back up, copy the files, move the database, test, and only then switch DNS.
Do one step at a time. Finish a step, check it works, then move on. Avoid changing DNS, firewall, database, and SSL all at once — that makes problems hard to find.
Before you start
The goal: move WordPress to offshore hosting without breaking URLs, images, or the database.
Take a backup first. Before changing anything, download a backup or create a restore point. Back up the WordPress files and the database. On a VPS, take a server snapshot if your panel allows it.
- Keep your domain login ready.
- Keep your hosting panel login ready.
- Keep the server IP, username, and password (or SSH key) ready.
- Open a notes file and write down every change you make.
- If you touch the firewall or SSH, keep one terminal window open until testing is done.
Where do you need to go?
Each part of the move happens in a different place:
- Plugin cleanup → wp-admin.
- Files → your hosting File Manager or FTP.
- Database → phpMyAdmin.
- The final switch (DNS) → your domain or Cloudflare panel.

The steps
Step 1: Back up the files and database
Download wp-content, the WordPress files, and a database export. Don’t rely on a plugin backup alone.
# Export the database from the old server
mysqldump -u dbuser -p dbname > backup.sql
Check: you now have the site files and a .sql database file.
Step 2: Create the database on the new hosting
In your new hosting panel, create a fresh MySQL database, a user, and a password. Save these details.
Check: the database user has all privileges.
Step 3: Upload the files and import the database
Upload the files to public_html (or your domain root). Import the database with phpMyAdmin or the mysql command.
mysql -u newuser -p newdb < backup.sql
Check: the tables appear in the new database.
Step 4: Update wp-config.php
Edit the database name, username, password, and host in wp-config.php.
nano wp-config.php
Check: the site connects with no database error.
Extra commands you may need
Run these only on your own server. If your server uses a managed panel, check with support before changing system-level settings.
Find old URLs in the database
wp search-replace "http://old-domain.com" "https://yourdomain.com" --dry-run
Use WP-CLI only if it’s available. Run it without --dry-run once you’ve checked the preview.
Check the important URLs
curl -I https://yourdomain.com
curl -I https://yourdomain.com/wp-admin/
Confirm the homepage and admin return the status you expect.
Keep short notes as you go
While you work, jot down each change: the old value, the new value, the time, and whether the test passed. For example: “Old IP 1.1.1.1, new IP 2.2.2.2, changed 10:30, homepage works, SSL works, sitemap works.” It sounds small, but it saves a lot of confusion if something breaks.
If you run server commands, paste the output into your notes too. Then if you ask support for help, you can show the exact command, the exact error, and the exact time.
If a step fails, how to undo it
Always have a way back. For DNS, put the old record back. For a migration, point the domain back to the old host. For firewall or SSH, use the VPS console to re-open the SSH port. For SSL, remove the forced-HTTPS rule until the certificate works. Don’t change ten things at once.

How to test after setup
- Open the homepage in a private browser window.
- Open an inner page, a blog post, and a service page.
- Check the HTTPS padlock — there should be no browser warning.
- Open
/sitemap_index.xml(or your sitemap URL). - Make sure key pages return 200, redirects are 301, and there are no redirect loops.
- Check Google Search Console after the move.
Quick troubleshooting
| Problem | Likely reason | What to do |
|---|---|---|
| Database connection error | Wrong details in wp-config.php | Recheck the DB name, user, password, host |
| Images missing | wp-content/uploads not copied | Upload the full uploads folder |
| Redirects to the old domain | Old URL still stored in the database | Run search-replace carefully |
Final checklist
- Files uploaded.
- Database imported.
- wp-config.php updated.
- Permalinks saved.
- DNS changed only after testing.
OffshoreKaka offers privacy-friendly hosting, VPS, and dedicated servers for people who want real control and reliable performance.
FAQ
Can I follow this without much experience?
Yes — just go slowly and test after every important change. If you are not comfortable using SSH, pick managed hosting or ask support.
Will this get me to #1 on Google?
No honest tutorial can promise that. A clean move protects your URLs, speed, and HTTPS — but your content and backlinks still decide your ranking.
What should I send to support if something breaks?
Send your domain name, server IP, the exact error message, a screenshot, the last change you made, and whether it started after a DNS, SSL, firewall, or migration change.