Siteligent performs preflight checks before a migration begins and processes the transfer through multiple background stages. If a migration fails or gets stuck, the error is usually related to the destination server's PHP configuration, required extensions, available resources, or security rules blocking the transfer endpoints.
Out of Memory or PHP Timeout Failures
The migration may fail while extracting files or importing the database. In some cases, the migration progress may appear to stop moving.
These problems commonly occur during the extract_files or import_database stages.
What Causes It?
The destination server may have insufficient PHP memory or a restrictive execution timeout. Background WordPress processes can also be affected by server resource limits.
How to Fix It
Check the PHP configuration on your destination server and make sure:
memory_limitis at least 256 MB512 MB is recommended for sites larger than 2 GB
max_execution_timeis 60 seconds or higher
After updating the server configuration, retry the migration.
ZipArchive Is Missing
The migration doesn't start because the preflight check reports:
ZipArchive unavailable
What Causes It?
The PHP installation on the destination server doesn't have the required ZIP extension enabled.
How to Fix It
Enable the PHP zip extension through your hosting provider or hosting control panel. Depending on your hosting environment, this may be managed through cPanel, Plesk, RunCloud, or your provider's PHP configuration. Once the extension is enabled, run the migration again.
REST API Blocked
Siteligent cannot start the transfer and reports a REST connection error, sometimes involving the /transfer/begin endpoint or a 403/404 response.
What Causes It?
A security layer on the destination site may be blocking Siteligent's migration requests. Common causes include:
Wordfence
Shield Security
All-In-One Security (AIOS)
Cloudflare Web Application Firewall
How to Fix It
Make sure your firewall or security configuration allows Siteligent's transfer requests. You may need to:
Add Siteligent's outbound IP addresses to your firewall allowlist.
Configure a Cloudflare WAF bypass for requests from Siteligent.
Make sure the Siteligent Connector's transfer endpoints aren't being blocked.
For detailed firewall configuration, see Site Security Scans & Firewall Configurations.
Migration Stops During Preflight
If the migration is blocked before any data is transferred, check the destination server requirements first.
Siteligent's preflight audit checks:
PHP version
MySQL/MariaDB version
ZipArchive
PDO MySQL
OpenSSL AES-256-GCM support
wp-contentwrite permissionsAvailable disk space
Fix the failed requirement and retry the migration rather than attempting to bypass the preflight check.
Migration Completes but the Site Has Problems
If the migration reports success but the website doesn't behave correctly afterward, work through the post-migration checks:
Confirm DNS points to the new server.
Verify the SSL certificate.
Clear all website caches.
Run a Security Scan.
Check the PHP Error Monitor.
Run the Broken Link Checker.
If you changed the domain during the migration, also check links, images, and other content that may still reference the previous domain. Siteligent performs an automated search-and-replace during the identity rebind and post-import stages, including support for serialized PHP data and JSON objects.
Before Retrying a Failed Migration
Before starting the migration again:
Check the exact stage where it failed.
Review the destination server's PHP limits.
Confirm required PHP extensions are enabled.
Check available disk space.
Verify
wp-contentis writable.Check security plugins and firewall rules.
Make sure the Siteligent Connector is up to date.
This gives you a better chance of resolving the underlying problem instead of repeatedly retrying the same failed migration.
Have Questions or Need Help?
If you've checked the steps above and your migration still isn't working, our support team is here to help.
Create a Support Ticket and share the migration error, affected site, and any relevant screenshots or logs so we can investigate the issue.
