- Hide menu

Migrating WordPress and setting up SSL on new host

I’ve just gone through moving a set of WordPress sites that was part of a multisite network on a Digital Ocean droplet. The motivation was having the multisite move off Ubuntu 14 to the more recent version Ubuntu 18.04.5 LTS so I could use certbot to install and keep up to date SSL certificates from LetsEncrypt.

There’s a lot of opinions, suggestions and tips on how to do this. One of the most informative is here. Essentially, there’s two approaches. Use the built in Export/Import fuction that exports an XML file that can be imported on another WordPress site, or a plugin that backs up everything and migrates it on another host at the filesystem level.

The benefit of the latter is that if you have a highly customised site with lots of plugins, after migrating to a new host, everything should just work. The downside is that there are many tools, none are free, and it’s not clear if it will work until you pay for the plugin.

Since my sites were relatively straightforward, I used the built in Export/Import function and then manually installed the required theme and settings. This might not work for complex e-commerce and customised sites.

To get SSL working, these tips on Digital Ocean is helpful: enable-https and apache-virtual-hosts. After setting it all up, you should check that you have all your virtual hosts setup properly.

Then check to see the quality of your SSL implementation at ssllabs.com. To get an A+ you might need to disable old protocols like TLS 1.0 and weak ciphers. And enabe HSTS. When that’s done, sit back and smile.