Moving your website from one host to another is often touted as a complicated process, but it can actually be quite simple. All it takes is a few steps, and your site will be up and running once more β this timeΒ on a different (and better) host. The only trick lies in pulling off the process with no downtime.
If thereβs one thing you never want your website to be, itβs down for the count. The good news is youβll only needΒ five steps β as weβll show you in this piece. However, before that letβs take a moment to talk about the dangers of downtime, and what you need to do before migrating your site.
Why Avoiding Downtime Is Important When You Move Your WordPress Website
One of the first questions you may ask yourself is:Β Whatβs the point of going through these steps just to avoid a little downtime? To answer this, we need to talk about the many ways thatΒ downtime can affect your website:
- It could cause confusion. A lot of users might be confused (maybe even believing youβve shut down) if they find your website isnβt available β after all, every site should be up 24/7.
- You could scare visitors away. One of the best things about the internet is the number of alternative sites available for practically anything. If your site is down, users may consider their alternatives.
- It looks unprofessional. There are plenty of legitimate reasons why a website might experience downtime, but most visitors arenβt aware of them. All they know is your site isnβt there when they need it, and that can make you look unprofessional.
The good news is, you donβt need to make a massive effort to avoid downtime while moving your WordPress website to a new host. Think about it as the cherry on the migration cake β since youβre already migrating your site, you may as well cover every base.
What You Should Consider Before You Move Your WordPress Website
It goes without saying that you canβt migrate a site without having somewhere to move it to. ItΒ means finding a new web host, which may require some research if youβre looking for a WordPress-friendly platform.
Once youβve found and purchased server space on your newΒ host, youβll also need to pick a migration plugin to get the job done. Weβre big fans of Duplicator, and weβve extolled its virtuesΒ in the past:
However, another popular plugin is UpdraftPlus. This is primarily a backup tool β and is incredibly popular β but it can also be used as a migration tool through the purchase of one of itsΒ premium plans.
Itβs also worth noting that you shouldnβt install WordPress on your new host before the migration. The plugin weβre going to use will take care of the entire process for you, so letβs move right on to the tutorial section.
How to Move Your WordPress Website to a New Host with No Downtime (In 5 Steps)
Before we get started, itβs worth noting a lot of web hosts offer free migration services for new clients. However, they might not be able to guarantee 100% uptime during the process.
On the other hand, if you donβt mind tinkering with WordPress, install and activateΒ the Duplicator plugin. Weβll be using this throughout because itβs free and easy to use, so letβs get started!
Step #1: Export a Copy of Your Website
Once installed, a new Duplicator tab will appear on your WordPress dashboard. Click on it and select the Packages > Create New option:
Duplicator refers to the copies of your site as βpackagesβ, and you can create an almost unlimited number. Each package includes two components β your siteβs files and an installer. For now, giveΒ your package a descriptive name and use the defaultΒ settings under the Setup tab to store it on your server:
Now click on Next,Β and give the plugin a few seconds to scan your site and make sure everythingβs working properly for the package to be created. At this stage, a few warnings might pop up depending on your siteβs settings:
If so, you can either expand each warning and follow the instructions to fix it, or check the box at the bottom of the page for the build to proceed regardless. Whatever you choose will be based on your specific needs. Once youβre ready, click on Build.
Depending on the size of your website, this process might take a few minutes. When itβs done, youβll see a Package Completed message pop up. Youβll find two buttons underneath β one to download your archives, and another for the installer.
Click on both and save themΒ to your computer. When complete, youβre ready for step number two. Itβs worth noting that all of the steps beyond this point will deal only with your new site, so you can forget about this one until the migration is complete.
Step #2. Upload Your Copied Site to YourΒ New Web Host
Naturally, neither of those files are going to do much good sitting on your hard drive, so the next step is to get them up on your new server.
To do this, youβll need to use a File Transfer Protocol FTP) client β we recommend FileZilla. When you signed up to your new web host, you shouldβve received a set of credentials for accessing your FTP server. If you didnβt, check your hostβs cPanelΒ for them (theyβre normally prominently displayed), or contact theΒ support team as a last resort.
Once youβve gained access to your FTP server, navigate to theΒ public_htmlΒ folder (it could also be called root or www). Enter this folderΒ and use FileZillaβs upload function to move both your Installer and Archive files to your server.
If youβre planningΒ to host multiple websites on your server, youβll also need to create an add-on domain. The instructions for doing so are simple, but could differ depending on your host. Once youβve done this, your Installer and Archive files will need to go into the correct folder within Β public_html. For example, if your add-on domain is calledΒ yournewwebsite.com, youβd need to upload theΒ files to theΒ public_html/yournewwebsite/Β directory.
Both files shouldΒ now be where they need to be, but we arenβt going to use them yet. First, we need to take care of your hosts file.
Step #3: Modify Your hosts File
Most operating systems enable you to map specific URLs to IP addresses manually using something called a hosts file. In this step, weβre going to map the domain of your existing WordPress siteΒ to your new serverβs IP address.
Doing this will enable you to access your new web host and migrate your website before changing your domainβs nameservers. Otherwise, weβd be pointing our domain to a server that wasnβt set up yet, so all users would see is a broken site. By migrating our website beforehand, we can ensure there are working copies on both our old and new servers while the changes to your domain propagate, and modifying yourΒ hostsΒ file enables you to do this comfortably.
While this is possible in bothΒ Linux and macOS, weβll be using a Windows machine. To access your hosts file in Windows, navigate to C:/Windows/System32/drivers/etc/ and open the hosts file in question using your preferredΒ text editor. Once youβre in, you need to add both your new hostβs IP address and your existing domain to the file:
If youβre not sure what your new serverβs IP address is, you can always find out by accessing your cPanel and checking out the Server Information section. Depending on which type of plan youβre using, you may be looking for either a shared or dedicated IP, so keep your eyes peeled:
Once youβve mapped your serverβs IP address to your existing domain, save the changes to the hosts file. Now, when you type that address into your browser, youβll be redirected to your new web host. However, because you havenβt yet set WordPress up, youβll see a placeholder:
Our penultimate step is to complete the migration, so letβs take a look!
Step #4: Run Your Installer and Complete the Migration
Next we needΒ to execute the installer we uploaded to our new hostβs rootΒ directory. To do this, navigate to www.yourwordpresssite.com/installer.php, replacing the placeholderΒ domain with yours.
At this stage, (and depending on your hostβs setup) you mayΒ need to set up a databaseΒ and a corresponding user for your new website through your web hostβs cPanel. Then, enter the name of that database, as well as the user and password you chose into the appropriate fields within Duplicator:
When youβreΒ done, click on the Test Connection button to make sure everything is working as it should. If it isnβt, your database might not get imported correctly, so donβt skip this step! Once everything is ready, scroll to the bottom of the page and click on Run Deployment.
The plugin may take a couple of minutes to do its thing. Once it does so, itβll ask you to confirm your new siteβs path and title, and youβll get the option to set up a new admin account as well:
After making sure your settings are correct, advance to the next screen. Here, youβll get the option to test whether your site is working correctly:
To complete your migration, click each of the buttons displayed above in order. By the end, your website will be ready and the Duplicator installer will remove any leftover files from your server (or notify you if it canβt do so automatically). Now, access your site and double-check that itβs working exactly as it was before the migration.
If all is well, itβs time to proceed to the last step.
Step #5: Update Your Domainβs Nameservers
The only thing left to do now is to update your domainβs nameservers to those of your new web host, which should appear either withinΒ cPanel or their knowledge base. Since your site isΒ now available onΒ both servers, your visitors will be guaranteed access to it while the changes propagate.
If you used a registrar such as Namecheap to set up your domain, simplyΒ find your new web hostβs nameservers and update them according to the instructions on your chosenΒ platform. You can also do the same if you registered your domain through your previous web host. To do this, log into your old web hosting account and look for the section that lists your domains.
Each web hosts deals with this process slightly differently, but the result is the same. Essentially, you need to locate your existing domain and look for an option to update its nameservers, forΒ example:
Next, youβll want to choose the option to use custom nameservers and replace your existing ones with those of your new web host. Afterward, save the changes and wait for them to propagate.
To avoid confusion, youβll also want to access your hosts file again and delete the line you added during step number three. After all, youβll soon be able to access your migrated site without it!
Conclusion
Moving a WordPress website is often necessary, but it remains a somewhat intimidating procedure on paper. In reality, the process can be deceptively simple. Once youβve migrated your first WordPress website β while avoiding any downtime, no less β youβll be able to do it again without breaking a sweat.
In this piece, weβve shown you how to move your WordPress website with no downtime. These are the five steps youβll need to carry out:
- Create and export a copy of your website.
- Upload the copy to your new host.
- Modify your hosts file.
- Run your installer and complete the migration.
- Update your domainβs nameservers.
Do you have any questions about how to move your WordPress website to a new host? Ask away in the comments section below!
Article thumbnail image by hanss / shutterstock.com.
Thanks for these amazing tricks! I will surely implement these tricks as soon as possible. Thanks for sharing this post.
You’re welcome! Good luck. π
Personally, I would avoid Duplicator like the Plague. It is more complicated than it needs to be and doesn’t always work.
I used to use All-In-One WP Migration until I realized that it has 500MB limit and has major problems with long file structures. It tends to error out if plugins have long filenames and doesn’t always make it clear why it doesn’t work.
After fighting for months with these issues, I finally decided to just purchase a subscription to UpdraftPlus and have never looked back. It is leagues better than any of the free and premimum options and comes with more functionality for every situation imaginable when it comes to backups, migration, and cloning. Like most, I was on the fence about purchasing, because no one wants to pay for anything. But trust me when I say, the subscription is worth it. I went from wasting time configuring and troubleshooting migrating sites to just a few clicks and being on my way.
Yes, there are free alternatives out there, but the truth is, we tend to look for the free options because we are simply, being cheap (I know I was). It’s not that I couldn’t afford $145 — I just didn’t want to spend $145. But then I realized that I could burn that on going out to dinner a few times a week. So I took the plunge and after using for a couple sites, wondered why I was being so cheap in the first place.
I’m not trying to sell people on UpdraftPlus, but more on the point that, there is a reason why premium plugins like this exist. They are well-built, heavily supported, and are designed with longevity in mind. Free alternatives could be here one day and gone the next, forcing you to reassess your entire workflow and that isn’t worth the small cost you pay for it.
In any case, I highly recommend UpdraftPlus for its ease of use, extensive features, and peace of mind.
Great job. And excellent article
Thanks! We appreciate your comment. π
I’m definitely going to try Duplicator next time. I have used ManageWP in that past but this looks faster. I like the idea of not having to manually recreate the database and user on the new host.
Hi Robin! Good luck β let us know how it works out for you. π
I can not get Duplicator plugin to work with Godaddy.
John, I’d suggest posting in the Duplicator support forum to see if someone knows how to resolve that issue: https://wordpress.org/support/plugin/duplicator.
Thanks for this. I use Duplicator all the time and love it.
The only problem I ever run into is moving a large site that is hosted on a really awful cheap shared host that throttles access…you know who you are.
Thanks again,
ernie
You’re welcome, Ernest! You make a good point β that’s why it’s so important to have a really good hosting provider.
Just use Updraft. Ive been using it for 2 years to move sites from one host to another. Zero issues. Magical.
Hi Paul! We agree that Updraft is a great plugin. The only downside is that you need to purchase a premium plan if you want to use it to migrate your site.
I used Duplicator several times last week, but with one hour of downtime.
It works perfect!
Thanks for commenting, Stephan! We’re glad Duplicator worked out so well for you.
I’ve used Duplicator for the past year or two. Normally works great until you work with some hosting companies that have restrictions on no working with zipped files or larger sites that may take up too much memory to process the backup and fail.
Yeah I’ve had this issue as well a time or two. It can get a little confusing if you have to go back in and do some things yourself, specifically anything database-related.
I normally add an extra step before changing the DNS, because changing the DNS can take up to 24 hours, which can make problems for a smooth domain move (especially if it is an e-commerce site).
That’s why we normally first change the ‘A record’ for the website from the users current server, to point to the IP of the new server. ‘A record’ changes are usually resolved in under an hour (normally just a few minutes), and that definitely helps for a smoother transition.
Hi Joel! Thanks for the suggestion. π
All-In-One WP Migration Is really perfect and easy to use, as David and Richard mention. No skills needed and done in a couple of minutes. For bigger sites you need the premium version. The support is excellent.
Please try it John. You really don’t want anything else!
Hi Chantal. π You’re right; that’s another good migration option.
The only difference I see between the one John describes and the one David describes is that John gives a lot of detailed description, making it seem a little more complicated than it is.
And John also uses the change to the Hosts file so that he can see the new site in place and make sure it is working the way he wants BEFORE the public can see it. He does make the point that the change to the Hosts file is not necessary, but it is nice to know the migration went well before others let you know it did not.
I am glad for all the migration tools named here as I was not aware of them. It is always nice to have a recommendation before launching an important migration.
Thanks for your comment! You make some good points. π
“…weβll be using a Windows machine….”
Yeah! finally 80%+ of visitors will have something in common.
One tip I can recommend: with websites now gong the SSL route, ensure all images are pulled from the correct site and not the old (still active) website.
Great Article!
Thanks Billy! Youβre right that itβs important to be sure your content is being pulled from the correct version of your site.
This is a great article, but the process seems overly complicated.
I have had excellent results with the free plugin “All-In-One WP Migration.”
I have migrated multiple websites with this plugin and never had a problem. Here are the 5 steps I use.
1. Install the plugin on the old site and the new site (both must already have WP installed).
2. On the old site, use the plugin to create a package (full site backup, including database). In this step, you can specify whether you want to change any pathways or other code, but I never do.
3. Download the package to your computer.
4. On the new site, use the plugin to import and install the package (backup).
5. Follow the very easy instructions for resetting your URL (using http or https, www or not).
Done. It has never taken me as long as 10 minutes to transfer a site. The transfer brings over all the users and their passwords as well as all files and databases. The new one works exactly like the old one did.
If your new site is on a different DNS server, all you have to do now is change your DNS servers to point to the new host and you’re finished.
This is so simple even I can do it.
Hi David and Richard. We agree that All-in-One WP Migration is another excellent option. π
I love All-In-One WP Migration for moving sites over. Only with a large site do you need to go premium version.
Some hosts offer free website transfer and they will do all of the above for free. However, in most of the cases when you change the nameserver your website maybe showing a default page from your new host, thus your website won’t be visible.
Hi Ivailo! You make a good point. Itβs important to understand how your particular hosting provider does things. π
Very nice article. But it’s even faster with backupbuddy (premium, not free). I can move a website in 10 minutes. I know it’s premium but it’s worth the money.
Thanks for your comment! We agree that BackupBuddy is a good premium alternative.
I would agree, I have a local Ubuntu server that I use to develop sites, then use BackupBuddy to move to a live environment, very easy to use.
Can you (or someone) please clarify the part about adjusting the hosts file? Are you saying the file is on my own actual computer rather than my web-hosts server?
I’m confused as to what that does and how it helps.
On Windows use the editor from Microsoft because other editors won’t find the file because on Win 10 this is a virtual path AND run the editor as Admin. If you don’t run the editor as admin you can’t save the file.
This step is to fake the change of the DNS to test the new DNS setting. Yes it is local and don’t forget to reverse the change after testing. It is only temporary for your personal testing not for the others
OK, thanks. I still find it confusing because, as you say, it only affects my computer and not anyone else’s. I suspect it’ll make more sense to me when I actually do it and cotton on to what’s happening.
I think it is better to change the file and test if everything was fine than to hope that it works (and have a problem if not because all other people can see it too.
But it up to you to make it as you like…
Don’t get me wrong, it’s not that I wouldn’t do it, It’s just that I don’t understand it.
Learning is fun π
π
Hi John,
Thank you for writing this post, I had tried migrating a site with this program before without success and just gave up. This morning I thought WTH, and gave it another try and it really is a great way to move new sites from my local server to a web host. I am really glad I took another look at this plugin. Hopefully, it works just as well when migrating sites to other web hosts.
Hi James! Weβre glad the plugin worked out so well for you. π