Skip to main content

WordPress Migration to Cloud Hosting

Migrate a WordPress site to cloud infrastructure with containerization, managed databases, CDN setup, and zero-downtime DNS cutover.

Fill in the placeholders

Edit the values, then copy your finished prompt.

Your Prompt
prompt.txt
You are a WordPress cloud migration specialist. Help me migrate a WooCommerce store with 10K products WordPress site from shared hosting (GoDaddy) to AWS with zero downtime.

Step 1: Audit the current WordPress installation. Document: WordPress version, PHP version (8.1), MySQL version, installed plugins (35 total with 28 active), active theme and child theme, custom code modifications, upload directory size (15 GB), database size (2 GB), cron jobs, .htaccess rules, and any server-specific configurations (mod_rewrite, php.ini overrides). Identify potential compatibility issues with the target cloud environment.

Step 2: Design the cloud architecture on AWS. Set up: a EC2 t3.medium instance (or container) with PHP 8.3 and Nginx, a RDS MySQL 8.0 managed MySQL instance for the database, S3 for media uploads with a CDN frontend (CloudFront), ElastiCache Redis for object caching and session storage, and an SSL certificate via AWS Certificate Manager. Draw the architecture diagram showing traffic flow from user to CDN to compute to database.

Step 3: Prepare the cloud environment. Provision all resources using Terraform for reproducibility. Configure the compute instance with the WordPress-optimized PHP settings: memory_limit = 512M, max_execution_time = 300, upload_max_filesize = 64M, OPcache enabled with 256MB memory. Install and configure Nginx with WordPress-specific optimizations (gzip, browser caching, security headers). Set up the managed database with automated backups and a read replica for reporting queries.

Step 4: Migrate the data. Export the database using wp db export or mysqldump with --single-transaction for consistency. Transfer the export to the cloud database using a secure connection. Migrate the wp-content/uploads directory to S3 using AWS CLI s3 sync. Configure the WordPress uploads to use the cloud storage via the WP Offload Media plugin. Run wp search-replace to update all URLs from the old domain to the new infrastructure endpoint. Verify by comparing post counts, option values, and user counts between source and target.

Step 5: Test the migrated site thoroughly before DNS cutover. Configure a hosts file entry or a temporary domain to access the cloud site. Run through the migration QA checklist: homepage loads correctly, all pages render (check 20 critical pages), forms submit successfully, WooCommerce checkout works (if applicable), admin dashboard is accessible, cron jobs execute, media files load from S3 via CDN, and performance benchmarks meet the target (under 200ms TTFB).

Step 6: Execute the zero-downtime DNS cutover. Lower the TTL on Route 53 DNS records to 300 seconds 48 hours before migration. On cutover day: do a final database sync (export delta changes since initial migration), update URLs in the database, switch DNS A/CNAME records to the cloud load balancer, monitor DNS propagation, keep the old server running for 48 hours to serve clients with cached DNS, and verify with global DNS checks. Set up monitoring alerts for CloudWatch + UptimeRobot to catch any issues in the first 24 hours.

What this prompt does

This prompt positions the model as a WordPress cloud migration specialist moving a [site_type] site from [current_hosting] to [target_cloud] with zero downtime. It runs six stages: auditing the current install, designing the cloud architecture, provisioning, migrating data, testing, and a DNS cutover.

The audit captures the facts that derail migrations — PHP version ([current_php]), [plugin_count] plugins, [upload_size] of media, [database_size], cron jobs, and server-specific config. The architecture maps onto [target_cloud] services: [compute_service] with PHP [target_php] and [web_server], [managed_database], [object_storage] behind [cdn_service], and [cache_service]. Provisioning via [iac_tool] makes it reproducible, and lowering DNS TTL to [low_ttl] before cutover with an [overlap_period] overlap is what keeps the move seamless.

The sequencing is deliberately conservative because cutover, not new infrastructure, is where migrations fail. Data moves in two passes: an initial copy of the [database_size] database and [upload_size] of media to [object_storage], then a final delta sync on cutover day so nothing posted in between is lost. Before DNS flips, the whole site is validated on a temporary domain against a checklist of [page_count] pages and a [target_ttfb] performance target. Keeping the old server live through the [overlap_period] gives a fallback while DNS propagates, which is what makes the move genuinely zero-downtime.

When to use it

  • You are moving a WordPress site onto cloud infrastructure on [target_cloud].
  • The site is large enough ([upload_size] media, [database_size] database) that a sloppy migration risks downtime.
  • You want media on [object_storage] behind [cdn_service] instead of local disk.
  • You need reproducible provisioning via [iac_tool].
  • You want a tested rehearsal on a temporary domain before flipping DNS.
  • You need a zero-downtime cutover with a rollback window.

Example output

Expect a phased migration plan: an audit checklist of the current install, an architecture diagram for [target_cloud] showing user to [cdn_service] to [compute_service] to [managed_database], provisioning steps in [iac_tool] with tuned PHP settings ([php_memory_limit], [max_upload_size]), a data-migration sequence using [sync_tool] and [s3_plugin] with search-replace, a pre-cutover test checklist hitting [page_count] pages against a [target_ttfb] target, and a DNS cutover runbook on [dns_provider] with an [overlap_period] overlap.

Pro tips

  • Do the audit honestly; an undocumented cron job or .htaccess rule is what breaks the cutover.
  • Provision with [iac_tool] so you can rebuild the environment if the first attempt is wrong.
  • Lower the TTL on [dns_provider] to [low_ttl] a day or two before cutover, not the morning of.
  • Do a final delta database sync on cutover day so nothing posted after the initial copy is lost.
  • Keep the old server live for the [overlap_period] to serve clients still holding cached DNS.
  • Validate [target_ttfb] on the temporary domain before flipping, since fixing performance is easier pre-cutover.

Frequently Asked Questions

How does this achieve zero downtime during the switch?
It lowers DNS TTL to `[low_ttl]` ahead of time, does a final delta sync on cutover day, switches DNS records, and keeps the old server running for the `[overlap_period]`. Visitors with cached DNS keep hitting the old site until propagation completes, so no one sees an outage.
Will my media files and large database transfer cleanly?
Media of `[upload_size]` moves to `[object_storage]` using `[sync_tool]` and is wired up through the `[s3_plugin]`, while the `[database_size]` database exports with a consistent single-transaction dump. The prompt also verifies post, option, and user counts between source and target.
Can I test the migrated site before going live?
Yes. Before the DNS cutover you access the cloud site via a hosts-file entry or temporary domain and run a checklist across `[page_count]` critical pages, including forms, admin, cron, and media loading, plus a `[target_ttfb]` performance check.
What if something goes wrong after cutover?
Because the old server stays live during the `[overlap_period]` and infrastructure is provisioned via `[iac_tool]`, you retain a fallback path and can rebuild or revert. Monitoring through `[monitoring_tool]` is set up to catch issues in the first 24 hours.
Engr Mejba Ahmed

Need this built for real?

Engr Mejba Ahmed

AI Developer · Software Engineer

I'm Mejba — I design and ship production AI systems, automations, and full-stack apps. If you want this turned into a working solution for your team, let's talk.

More in WordPress & CMS Prompts

Engr Mejba Ahmed

Engr Mejba Ahmed

AI assistant · trained on my work

👋

Hey there!

Quick Actions

WhatsApp Direct line to me

Chat on WhatsApp

+880 1723 741224 · Replies within the hour on working days

Popular Questions

Engr Mejba Ahmed is connected
Engr Mejba Ahmed is typing...
Engr Mejba Ahmed avatar

✉ Want me to follow up? Drop your email

Engr Mejba Ahmed avatar

📞 Connect Directly

Choose how you'd like to reach me

WhatsApp

+880 1723 741224

Email

mejba.13@gmail.com

✓ Details sent! I'll get back to you shortly.

Powered by OpenAI

335+

Blog Posts

25

AI Courses

63

Projects

Services & Expertise

Pricing & Process

Learning & Resources

Connect & Support