How To Move A Website Between Webservers Using cPanel / WHM

May 5th, 2008

cPanel has always been my web control panel of choice, whether it is to perform administration tasks (using WHM) or simply to manage your website. It has to be one of the most mature control panel out there along with Plesk and DirectAdmin.

When I shop for a web host, I always make sure they offer cPanel because it allows me to move websites from one host to another seamlessly. This way I can move my clients’ websites to another host without losing email account passwords, subdomains, ftp accounts, mysql databases, etc.

Let’s see how you can move a website from a webserver to another using cPanel.

For this tutorial, let’s pretend that Server A is the source server and that Server B is the destination server.

Before we go any further, you must ensure that the root user can connect to the source server through SSH. This is usually forbidden but you can permit it for the time you will be copying accounts. Read this tutorial for more information on enabling and disabling SSH root access.

  1. Log into WHM on Server B using the root account (http://server-b:2086).
  2. From the left menu, click on Copy multiple accounts/packages from another server. I prefer this method since it allows you to see a list of accounts and select which one(s) you want to copy.
  3. Enter the remote server’s hostname or ip address.
  4. In the Authentication section, select to login as root and select the password authentication method box. Click on the screenshot below to enlarge it.

  5. Hit the Fetch Account List button.
  6. If the connection was successful, you should now have the cPanel account list from the remote server. You will see hosting packages as well.
  7. Check the boxes besides each account you want to move and click on the Copy button the bottom.
  8. Configure your domain’s DNS server if they have changed and make all necessary adjustements to DNS entries (like IP address changes).
  9. Once all DNS changes have propagated, make sure your website is running correctly and terminate the accounts on the source server.

You could also choose to test the transfered websites by modifying your hosts file (c:\[windows]\[system32]\drivers\etc\hosts) BEFORE making any DNS change. To tell your computer to connect to a hostname with a different IP than the one it resolves to, just add entries like this to your host file:

65.30.28.66 mydomain.com

65.30.28.66 www.mydomain.com

This way you will ensure no visitors will stumble upon a “broken website”.

7 responses so far ↓

avatar

1. Response by : S Abidoye on May 11, 2008 at 12:29 pm

your website is great. but please give a non techy more directions (see my email)
tx

avatar

2. Response by : S Abidoye on May 11, 2008 at 12:30 pm

your directions are great but I need more hand holding (please see my email to you…awaiting response :) !)

avatar

3. Response by : The Web Hosting Hero on May 14, 2008 at 7:26 am

Hi Shola,

I got your mail. Unfortunately, there’s not a single way to move a website. It depends on what you are moving and where.

In this case I know you’re moving a WordPress blog but I need to more about your destination host. Does it use cPanel?

avatar

4. Response by : latest cellphone on Sep 17, 2010 at 1:35 am

I think we have to use the new server to get all sites. and I was assuming that i have to login to old server and then move all sites to new server .

avatar

5. Response by : jehzlau on May 21, 2011 at 6:07 am

just what I’m looking for. :D

you have to package the accounts from the old server before moving to step 2 in your tutorial right? O_O

avatar

6. Response by : The Web Hosting Hero on May 22, 2011 at 2:07 pm

@jehzlau: no you don’t have to.

avatar

7. Response by : Ralph on Nov 4, 2011 at 4:32 pm

Worked like a charm – thanks!

Leave a Comment




Webmaster Resources: Web Hosting Blog
© Copyright 2012 - TheWebHostingHero.com
Follow us on TwitterFacebookSubscribe to our RSS Feed