SrvBot Migration

Description

SrvBot Migration is the official migration tool for SrvBot managed WordPress hosting. It packages your entire WordPress site (files, database, themes, plugins, uploads) and securely transfers it to your new SrvBot server.

How it works:

  1. Sign up at srvbot.io and choose a plan
  2. Install this plugin on your current WordPress site
  3. Enter the migration key from your SrvBot dashboard
  4. Click “Start Migration” — we handle the rest
  5. Verify your site on a preview URL, then switch DNS

Features:

  • Zero downtime migration
  • Handles large sites via chunked upload (existing backup archives are skipped automatically; individual files over 256MB are skipped and listed for you afterward)
  • Automatic database export and transfer
  • Works on shared hosting (no SSH required)
  • Real-time progress tracking
  • Secure transfer via HTTPS
  • Background processing — doesn’t block your site

Requirements:

  • An active SrvBot account (sign up here)
  • PHP 7.4 or higher
  • WordPress 5.0 or higher

External Services

This plugin connects to SrvBot, a managed WordPress hosting service operated by Clouno, Inc. (a US-registered company), in order to migrate your site to SrvBot. No data is sent on install or activation.

When you enter your migration key and click Connect, the plugin sends your site URL and your WordPress and PHP versions to SrvBot’s API (https://api.srvbot.io) to validate the key and register the migration.

When you then click Start Migration, the plugin additionally sends the following over HTTPS to that API and to the object storage (Amazon S3) endpoint it returns:

  • A site profile (manifest) used to recreate your site: WordPress, PHP and MySQL/MariaDB versions, database table prefix, charset and size, web server type, the active theme and the list of active plugins, your site’s URLs and filesystem paths, file counts and sizes, and the environment check results.
  • A full export of your WordPress database. This includes your user accounts and any personal data stored by your site and its plugins.
  • Your site files, including wp-config.php (which contains database credentials and secret keys).

Data is transmitted only to SrvBot/Clouno-controlled endpoints, only while connecting or running a migration, and is used solely to provision the copy of your site on SrvBot.

  • Terms of Service: https://srvbot.io/legal/terms
  • Privacy Policy: https://srvbot.io/legal/privacy

Installation

  1. Upload the srvbot-migration folder to /wp-content/plugins/
  2. Activate the plugin through the ‘Plugins’ menu
  3. Open SrvBot Migration from your WordPress admin menu
  4. Enter your migration key and click Connect
  5. Click Start Migration

FAQ

Do I need SSH access?

No. The plugin works entirely through the WordPress admin dashboard.

How long does migration take?

Typically 5-15 minutes depending on your site size and hosting speed.

Will my site go down during migration?

No. Your current site continues running normally. You switch DNS after verifying the migrated site.

Does it work with WooCommerce?

Yes, but orders placed during migration won’t transfer automatically. We recommend briefly enabling maintenance mode for active stores.

Does it support WordPress Multisite?

Not currently. Multisite installations require assisted migration — contact support@srvbot.io.

Does it support a relocated uploads directory?

Not currently. If your uploads directory has been moved outside wp-content (via the UPLOADS constant), the environment check stops the migration rather than silently leaving your media behind — contact support@srvbot.io for assisted migration.

Are any files left behind?

Existing backup archives (UpdraftPlus, Duplicator, All-in-One WP Migration, etc.) are skipped on purpose and are not listed individually. Any single file larger than 256MB is also skipped to keep the upload reliable — when the migration finishes, the plugin shows you the list of those oversized files so you can copy them over manually if you need them.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“SrvBot Migration” is open source software. The following people have contributed to this plugin.

Contributors

Translate “SrvBot Migration” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.8.5

  • WordPress.org review: all path comparisons now use wp_normalize_path() instead of hand-rolled separator handling, so the wp-content-location preflight and the scanner’s exclusion/relative-path logic compare correctly on Windows (backslash and drive-letter-case differences).
  • The scanner recognizes its own plugin directory via plugin_dir_path() and derives the site’s URL prefix from get_site_url() instead of assuming default directory names.
  • New environment check: the migration now stops when the uploads directory is outside wp-content (those files would previously have been silently omitted).
  • A failed manifest upload now retries and then fails the migration instead of continuing without the manifest the restore needs.
  • Chunk uploads report a clear “not enough PHP memory” error instead of exhausting memory on very large chunks.
  • Database export and chunk uploads attempt at least one batch/chunk per cron tick, preventing stalls when a very low max_execution_time yields a zero time budget.
  • A corrupt or unreadable scan file list now fails the migration cleanly instead of producing an empty inventory.
  • Access-deny guard files now also cover the parent uploads/srvbot-migration/ directory, and the whole working tree is excluded from the migration itself.
  • Docs: corrected the external-services disclosure (Connect does not send the MySQL version; Start Migration also sends the site profile/manifest).

1.8.4

  • WordPress.org review: removed the obsolete wp-content-writable preflight check — the plugin has written only to the uploads directory since 1.8.3, and the temp-directory check already covers the actual write location.
  • WordPress.org review: the disk-space preflight now measures free space at the uploads directory (where export data is written) instead of wp-content.
  • Uninstall no longer sweeps the pre-1.8.3 wp-content temp locations; it removes only the current uploads/srvbot-migration/ directory.

1.8.3

  • WordPress.org review: transient export data (database dump, file inventory, archives) now lives under the uploads directory (uploads/srvbot-migration/) instead of a custom wp-content folder — keeping the per-install randomized subfolder and access-deny guards.
  • WordPress.org review: replaced the direct cURL upload with the WordPress HTTP API.

1.8.2

  • Docs: corrected the install instructions — the plugin adds a top-level “SrvBot Migration” admin menu, not a Tools submenu.
  • Fix: a failed preflight no longer schedules a redundant (no-op) retry.

1.8.1

  • Privacy: the migration key is now also cleared when preflight fails or the migration hits an unknown state (previously cleared only on the other terminal paths).
  • Docs: clarified the external-services disclosure to distinguish what Connect sends (site metadata) from what Start Migration sends (database and files), and clarified that backup archives are skipped silently while only oversized files are listed.
  • i18n: shipped a complete translation template (languages/srvbot-migration.pot).

1.8.0

  • Safety: failed, errored, or reset migrations now delete their temporary export files (database dump, archives, inventory) instead of leaving them in wp-content.
  • Privacy: the migration key is cleared from the site options when a migration completes, fails, or is cancelled.
  • Files: .zip/.sql/.tar.gz files outside known backup directories now migrate (they were previously skipped everywhere); any file skipped for being too large is listed on the completion screen and recorded in the manifest.
  • Reliability: large archives (notably the database dump) are streamed to storage with flat memory usage, and the disk/memory preflight checks now scale to the database size.
  • Fix: non-standard layouts (wp-config.php above the WordPress root, or a wp-content directory outside it) are now archived correctly instead of being silently skipped.
  • Fix: the database-compression step is reflected correctly in the progress screen after a page reload.

1.7.0

  • Internationalization: every admin-interface string (PHP and JavaScript) is now translatable and ready for translate.wordpress.org.
  • Compliance: meet the WordPress.org Plugin Check coding standards — file deletion now uses wp_delete_file(), and the direct database/streaming-file operations required for migration are documented in place.

1.6.0

  • Record real URLs and paths in the migration manifest for correct subdirectory-install handling.
  • Fix: the database-compression step was missing from the progress timeline.
  • Security: randomize the temporary export directory per install, delete the database dump as soon as it is uploaded, and add Apache 2.4/IIS web-access denial (the temp dir was previously protected only by an Apache 2.2 .htaccess, which is a no-op on nginx/IIS).

1.5.2

  • Reliability fixes for large-table database export (WHERE clauses with simple LIMIT/OFFSET pagination).

1.5.1

  • Database export pagination stability fix.

1.5.0

  • Improve site-path detection and exclude junk/transient data from the export.

1.4.0

  • Detect subdirectory installs and record site/home paths in the migration manifest.

1.3.0

  • Redesigned admin interface with SrvBot branding.
  • Faster migrations: upload multiple file chunks and process multiple database batches per cron tick.
  • Support long filenames via the GNU @LongLink tar extension.
  • Skip files over 256MB and exclude backup directories/archives (e.g. UpdraftPlus) from the scan.
  • Fix gzip corruption on large database exports.
  • Add a disconnect/reset action that fully clears migration state.

1.1.0

  • Gracefully handle already-uploaded chunks when resuming a migration.
  • Asset cache-busting.

1.0.0

  • Initial release.