How to Move Your WordPress Website to a New Host With No Downtime

Posted on April 1, 2017 by in Tips & Tricks | 42 comments

How to Move Your WordPress Website to a New Host With No Downtime

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:

  1. 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.
  2. 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.
  3. 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 tool to get the job done. We’re big fans of Duplicator, and we’ve extolled its virtues in the past:

The Duplicator plugin.

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:

Creating a new Duplicator package.

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:

Duplicator's setup settings.

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:

Duplicator's scanning process.

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.

Downloading your installer and accompanying archives.

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.

Entering your credentials on FileZilla.

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:

Modifying your hosts 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:

Finding your new server's IP address.

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:

An example of a placeholder for a server where WordPress hasn't been set up.

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:

The Duplicator installer.

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:

Configuring your new site's settings.

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:

Testing your new site.

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:

Updating your domain's nameservers.

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:

  1. Create and export a copy of your website.
  2. Upload the copy to your new host.
  3. Modify your hosts file.
  4. Run your installer and complete the migration.
  5. 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.

42 Comments

  1. 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.

    • John Hughes

      Hi James! We’re glad the plugin worked out so well for you. 🙂

  2. 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 🙂

  3. 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.

    • 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.

    • John Hughes

      Thanks for your comment! We agree that BackupBuddy is a good premium alternative.

  4. 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.

    • John Hughes

      Hi Ivailo! You make a good point. It’s important to understand how your particular hosting provider does things. 🙂

  5. 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.

    • I love All-In-One WP Migration for moving sites over. Only with a large site do you need to go premium version.

    • John Hughes

      Hi David and Richard. We agree that All-in-One WP Migration is another excellent option. 🙂

  6. “…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!

    • John Hughes

      Thanks Billy! You’re right that it’s important to be sure your content is being pulled from the correct version of your site.

  7. 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.

    • John Hughes

      Thanks for your comment! You make some good points. 🙂

  8. 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!

    • John Hughes

      Hi Chantal. 🙂 You’re right; that’s another good migration option.

  9. 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.

    • John Hughes

      Hi Joel! Thanks for the suggestion. 🙂

  10. 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.

  11. I used Duplicator several times last week, but with one hour of downtime.
    It works perfect!

    • John Hughes

      Thanks for commenting, Stephan! We’re glad Duplicator worked out so well for you.

  12. Just use Updraft. Ive been using it for 2 years to move sites from one host to another. Zero issues. Magical.

    • John Hughes

      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.

  13. 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

    • John Hughes

      You’re welcome, Ernest! You make a good point – that’s why it’s so important to have a really good hosting provider.

  14. 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.

    • I can not get Duplicator plugin to work with Godaddy.

    • John Hughes

      Hi Robin! Good luck – let us know how it works out for you. 🙂

    • John Hughes

      Thanks! We appreciate your comment. 🙂

  15. 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.

  16. Thanks for these amazing tricks! I will surely implement these tricks as soon as possible. Thanks for sharing this post.

    • John Hughes

      You’re welcome! Good luck. 🙂

Leave a Reply

Comments are reviewed and must adhere to our comments policy.

401,632 Customers Are Already Building Amazing Websites With Divi. Join The Most Empowered WordPress Community On The Web

We offer a 30 Day Money Back Guarantee, so joining is Risk-Free!

Sign Up Today

Pin It on Pinterest