Migrating a static HTML or PHP site to WHC
Step-by-step for moving a plain HTML site or a custom PHP application — without the WordPress-specific complications.
Step-by-step for moving a plain HTML site or a custom PHP application — without the WordPress-specific complications.
Most migration guides assume you’re moving WordPress. This one is for everyone else — static HTML sites, custom PHP applications, single-page sites, brochure sites, classic LAMP-stack projects without a CMS.
These migrations are usually faster than CMS migrations because there’s no database wrangling and fewer moving parts. Many finish in well under an hour.
Before you start:
If you don’t have FTP access to your current host (lost the password, host is unresponsive), most hosts can generate a full backup from their control panel. Grab that as a fallback.
Log in to your WHC billing portal and provision a hosting plan if you haven’t already. Your welcome email contains the hosting panel login.
In the hosting panel:
your-username.example.test. You’ll use this to preview the site before switching DNS.Two options depending on the size of the site.
Option A — File Manager (good for small sites, under ~50 MB):
public_html/ or httpdocs/)Option B — SFTP (good for larger sites or when you want to use a desktop tool like FileZilla or Cyberduck):
Both methods preserve file structure, permissions, and timestamps. Use whichever is faster for the volume of files.
If your site uses MySQL:
For most small databases this takes seconds. Larger databases (1 GB+) are faster via command-line import — open a ticket and we’ll do it for you.
Then update your application’s database connection settings to use the new credentials (usually in a config file like config.php, db.php, or .env).
Hardcoded paths break in two common ways:
/home/oldusername/public_html/) — these change with hosting. Search your codebase for the old path and replace with the new one (you’ll find the new path in the hosting panel under file properties).http://oldsite.com/images/logo.png) — if your site hardcodes URLs anywhere, search-and-replace to the new domain or to relative paths.Use a tool like grep or your code editor’s project-wide search to find these. Common files to check: config.php, .env, header/footer templates, any include files.
.htaccess — copy it over with your files. Check rewrite rules still match the new structure.phpinfo.php if you need to verify something specific..env files in your web root or via the panel’s environment settings.Visit the temporary URL Enhance provided. Click through the site, check forms work, log in to any admin areas, verify database-driven pages display correctly.
Look for:
Fix anything broken here before you switch DNS. Once DNS is switched, real visitors hit the site and any breakage is visible to them.
When everything works on the temp URL, update DNS:
Most networks see the new DNS within 5 minutes. See our DNS setup article for the details.
Don’t cancel immediately. Wait 3-5 days to be sure:
Then cancel the old host before the next renewal hits. Auto-renewals are sneaky — set a calendar reminder.
mail(). Check the recipient address in your form-handling code.Open a ticket if:
Most “I’m stuck mid-migration” tickets get resolved in 15-30 minutes. Ask early; don’t suffer alone.
Let us know — or open a ticket if you're still stuck.
Step-by-step guide to moving your site, database, and email from your current host to WHC — with notes on what we can do for you.
WordPress, Joomla, Drupal — three ways to move a CMS site (plugin, manual, or we do it), with the gotchas specific to CMS migrations.