/ small business

Move Site From wpengine, how to migrate site

The steps to migrate a website away from wpengine and move to another web host.

1 Perform a full site backup & Download

wpengine-console-create-full-backup

Using the my.wpending console, perform a fill website back and wait for the email confirmation with the link to download the full backup.

2 Remove undeeded files/folders

Download your backup zip file, extract, and then remove the folder called mu-plugins which is inside the directory wp-content

Also remove the file advanced-cache.php

3 Take your mysql backup

Inside the backup you've just download, wpengine have helpfully placed a full database dump called mysql.sql. Find the sql database backup inside the wp-content folder.

Create a database and user on your new web host, then use this database dump to restore your databse. Or ask for help: We provide business web-hosting, if you're interested.

e.g. on linux: Restore your database from backup with:

cat wp-content/mysql.sql | mysql -u <yourUsername> -p <databaseName> 

Replace your wp-config.php

Replace your wp-config.php with the same version (probably the latest version) which Wordpress supplies.

To get this file, go to the Wordpress Codex page, scroll to "Configure Database Settings
" and download wp-config-sample.php.

Once you've found the sample wp-config-sample.phpfile provided by Wordpress, remove thecontents of your current file, and replace it with your new wp-config.php file.

Make sure you download the wp-config-sample.php which is right for your version of wordpress! You can see your current wordpress version in your wpengine dashboard, account overview section:
wpengine-find-current-wordpress-version

Update wp-config.php

Because you've downloaded the sample config file provided by Wordpress, you needed update your wp-config.php file with your new databse username & password.

Edit the file manually setting the database username & password accordingly.

4 Correct your table_prefix (Sometimes)

You may need to correct your table_prefix from wp_ as wpengine may have set it to your a shortend version of your sitename.

5 Mark your files at executable (wpengine permissions)

If you don't do this you will get "Permissions Denied" PHP fatal errors with your wpengine migration. The php interpreter needs the files to have the executable bit set, but the wpengine marks all files in the backup as non-execurable. If you know what you're doing, recursivly change the permissions of your website's files to 775 or similar:

chmod -R 775 /path/to/your/website/files*

6 Test, Test & More test

Test everythings working as expected, has your server got mod_rewire turned on, for your prerry urls to work? Is AllowOverrides configured correctly and to the correct directly? All these things need to be correct for your site to work. If you're using managed hosting, these things will be handled for you.

Update your DNS A records

After testing locally or by editing your /etc/hosts you're ready to switch over to your new web hosting provider. Good luck and keep going!

Remember, if you're site is slow, identify the cause or pay someone who knows what they're doing to help you. Don't blindly assume moving web host will help you. Common causes of a slow site include:

  • Cheap web hosts cramming too many sites onto one piece of hardware (you get what you pay for, cheap skape)
  • Installing far too many plugins
  • Badly written javascript blocking your site from rendering

We're a web host and have experience hosting experienced customers who've moved from wpengine and are willing to pay extra for decent customer service and technical ability. If that's you, get in touch.

Remove the wpengine user

There's a wpengine user on the wordpress accounts, which you may wish to remove.