Over the weekend I moved my site to a new hosting provider.
Although things are much easier than years ago, it is not a trivial task/project.
My website platform is WordPress and I have been using it for many (15+) years. It is an amazing content management system (CMS) tool. Over the years, I have changed hosting providers a few times, but the content system has remained the same, WordPress.
Generally speaking, the steps are:
- Sign up to a new host or hosting plan
- Back up your website’s files
including: database, files in WordPress directory
- Upload your website’s files to your new host
- Update your DNS settings
Having said this, to move the site from one provider or hosting plan to another, there are further details one needs to think for each of those steps / phases of the process… I am writing this as I just completed the move of this website to another hosting plan.
First: Prep and plan…
Prepping and planning time is always time well spent!
You have many years in which you have used your site and many iterations and little fixes along the months/years have taken place. There is probably no record of those iterations and changes, so you have to sit down and think about them as well. If the site is not yours you will need to spend time discovering its singularities.
Although no one wants to think about this, we need prepare to have some sort of “just-in-case” plan — Something you can live with while restoring your site in case things go sideways. Whatever it is, you need to be ok with it. For some is just a page that reads: “We are updating the site, so please check later”. For others that is unacceptable, so more time going though scenarios will need to be spent.
In my case, this I need to consider:
- My site is large: over 7GB in content / files which eliminates most of the free backup / migration tools
- I utilize multiple subdomains which I use for different things – I need to do these manually.
- My email is also connected to the DNS
- DNS is with my hosting provider – so I need to migrate that as well.
- It will take 24-48 hours for the DNS updates to take effect.
Remember: You will not be able to access your old site once DNS changes to the new ip address.
Second: Backup your existing site
Very first thing you need is a good back-up or migration tool for your content. This not only includes the files in the file system, but also the database and any special configuration items you may have.
As I mentioned, my site contains over 7.5 GB in content / files which eliminates most of the free backup / migration tools
You will need to do the content on the subdomains separate from your WordPress backups. If they contain simple HTML or similar files types, you could just go ahead compress the files and download/upload to the new server and decompress in the new folder for that subdomain.
Third: Stage the New Site
- Do not move the DNS until you have the new site staged and restored.
Go to your new hosting account and create a blank WordPress site (Make sure you make note of the admin username and password). Most of the hosting companies I have used offer Softaculous Auto Installer for cPanel, Plesk and others which contains many app installers including WordPress – Super easy to use.
I then install the backup / migrate plugin you chose to use, and restore the site –
Although I have used several ones, my go to backup and restore plugin is: Duplicator by Snapcreek.com – The free version does the job – even with my site’s content size – but if I wanted to buy it, the price will not break the bank and it covers multiple sites. A very good I found this time around was BackupBliss by Iniserv ( formerly known as Backup Migration ) which provide a super simple “quick” server to server transfer of the backup file and restore process.
Even the name is different (newsite.com or newsite.domain.com) – it will help with two things:
- make sure the restore works
- gives you the chance to address any things you need to address
I usually use test.yourdomain.com or staging.yourdomain.com for my process. Once you are comfortable with the new staged site, then you can proceed to back it up and restore it
Additionally make sure you have moved all of your additional subdomains if you have any
Fourth: DNS move
This is by far what takes the longest time to execute — Sometimes is immediate others it takes up to 48 hours to propagate across the Internet — Also keep in mind that while this is synching across the word, sometimes it will resolve to the new site and others to the new site.. If you change within the same hosting provider then it will happen faster than going different providers
You might be asking: What does DNS move mean?
Your domain name ( yoursite.com ) and everything related to it resolves to IP addresses. This is managed with a Domain Name System ( DNS ). Essentially it is the Internet phone book. A good article on this topic can be found here and another one mote technical by Cloudflare here. Although there are only thirteen root servers worldwide, there are millions of caching servers. Most (maybe every) hosting company has a nameserver service where customers can change their records.
When you move your site from one hosting account or server to another you need to change the ip address associated with the domain as well as all of the related records in that domain.
Fifth: go LIVE with your new site live
Once you have moved your DNS it is a matter of waiting the record changes to synchronize around the world.
There are many detail guides to move your WordPress site. I wanted to write this not as a deep teechnical piece but an overview of what to expect and some of the gotchas you may face. I hope this helps someone a bit.