Back up files, databases and email where needed. Check that the new environment meets your application's requirements.
Copy the data, configure the application's connections and test the site. Have a rollback plan before changing DNS, and do not cancel the old hosting immediately.
1. Create a complete backup
- Website files and uploaded images, including hidden configuration files.
- The database export and application version.
- A list of DNS records, email settings and scheduled tasks.
2. Copy and test
- Check the new environment's runtime and database versions.
- Copy the files, import the database and update connection settings.
- Test sign-in, forms, image uploads, search and email sending on the new hosting.
- For an online shop, agree on the migration time and account for orders placed during the transition.
3. Update the domain settings
- Change the required DNS records only after a successful test.
- Check HTTPS, redirects and email.
- Keep the old environment available until operation is verified. Document how to restore the previous state.
4. Handle data created during migration
Online shops, booking systems and membership sites may receive orders and new users while files are being copied. Specify when writes stop, when the final export is taken and where processing resumes. Do not let old and new systems write in parallel to separate copies of the same data stream.
- The final database backup time is known and documented.
- Payment webhooks, cron jobs and external connections point to the correct environment.
- New orders or bookings are processed by only one production system.
5. Handle old URLs when changing domains
Moving servers while keeping a domain and changing to a new domain are different tasks. For a domain change, map old URLs to new ones, preserve useful paths and check redirects. With WordPress, do not blindly replace text throughout the SQL backup, as the database contains serialised data.



