Skip to main content

Migrating a WordPress Site

Move your WordPress site to a new host or environment using Siteligent's background migration process.

Written by Surya

Siteligent breaks the migration into multiple stages so large file and database transfers don't have to run inside one long server request. The destination site is prepared and checked first, then Siteligent progressively transfers the database and files before reconnecting the site to its new environment.

Before You Start

Make sure the destination site:

  • Passes Siteligent's preflight requirements.

  • Has enough available disk space.

  • Has a writable wp-content directory.

  • Has the required PHP and database extensions enabled.

Siteligent checks these requirements before transferring data, so resolve any failed preflight checks before continuing.

How the Migration Works

Siteligent processes the migration through a series of background stages instead of attempting to transfer everything in a single request.

The destination importer progresses through these stages:

download_database
↓
download_files
↓
extract_files
↓
pre_wipe
↓
install_files
↓
import_database
↓
rebind_identity
↓
post_import_hooks
↓
report_complete

These stages are dispatched progressively through Siteligent's background queue, helping the migration stay within the execution limits of the destination server.

Database Migration

During the database import, Siteligent first imports the incoming database into temporary staging tables rather than immediately replacing the destination site's live tables. The imported tables use a temporary database prefix, keeping them separate from the site's existing tables while the import is in progress.

Once the complete database import succeeds, Siteligent performs an atomic multi-table rename to switch the temporary tables into place. This means the database isn't left partially replaced if something goes wrong during the import.

24-Hour Rollback Buffer

After the database switch, Siteligent keeps the previous database tables temporarily using the wpold_ prefix.

These tables are scheduled for removal 24 hours later, giving you a rollback window if you discover a problem after the migration.

Moving to a Different Domain

If you're also changing the site's domain, Siteligent can automatically update the old domain references in the migrated database. During the identity rebind and post-import stages, Siteligent performs a database search-and-replace to update the old absolute domain to the new one. The process also handles serialized PHP data and JSON objects to help prevent broken links, widgets, and media references.

After the Migration

Once Siteligent reports that the migration is complete, don't immediately consider the move finished.

You should:

  1. Update your domain's A records to point to the new server.

  2. Update any required CNAME records.

  3. Make sure the new server has a valid SSL certificate.

  4. Clear your site's caches.

  5. Run a security scan.

  6. Check the PHP Error Monitor.

  7. Run a Broken Link Checker scan.

These checks help confirm that the site is working correctly in its new environment.

What Happens to Your Backups?

Your Siteligent backup history is associated with your Site ID and Team, rather than the physical server IP address.

As a result, your existing backup history, cloud archives, and manual backups remain available after the migration. Once the new server is connected and stable, your automated backup schedules can resume as well.

If the Migration Fails

If the migration stops, check the stage where the failure occurred.

Common issues include:

  • PHP timeout or memory limit: Make sure the destination server has at least 256 MB of PHP memory, with 512 MB recommended for sites larger than 2 GB, and a max_execution_time of at least 60 seconds.

  • Missing ZipArchive: Enable the PHP zip extension through your hosting provider or hosting panel.

  • REST API blocked: Security plugins or Cloudflare WAF rules may block Siteligent's transfer endpoints. Whitelist Siteligent or configure the appropriate WAF bypass.

Have Questions or Need Help?

If you have questions about migrating your WordPress site or run into an issue during the transfer, our support team is here to help.

Create a Support Ticket and share the details of what you're experiencing so we can help you complete the migration.

Did this answer your question?