Migrating a cPanel reseller hosting account
Are you unhappy with your current reseller hosting provider? Did you find the best reseller hosting plan to switch to but you are worried how to migrate your web sites to the new company? Are you worried that you may lose data or your clients’ web sites may have downtime during the migration? We will explain in this article how the migration needs to be performed to avoid the issues mentioned above from happening.
First of all, make sure the company you are switching to will provide free migration for all your cPanel accounts. There are companies which provide free migration just for a few accounts and for the others you will need to pay extra. After that make sure the new company you are going to work with is running the latest version of cPanel and has the same or newer versions of Apache, PHP and MySQL. If any of your web sites requires any custom PHP/perl extensions to work make sure to ask for their installation before the migration. Ensure your new company provides private label reseller hosting plans with private nameservers. Once that is cleared you can continue to the migration process of your reseller hosting account.
The migration process is pretty straigh forward. The easiest way is to create a new cPanel account in your new reseller hosting plan which you would use to ftp the backups to from your old server. You don’t need a registered domain name for it. Login to cPanel of each of your accounts in the old server and generate full backups for each of them. Make sure to choose the backup to be saved to a remote ftp server and enter the IP and the cPanel login details of the account you just created on your new reseller hosting plan. Be patient and do not start multiple backups at the same time as that may cause load issues on your old server and your backup processes may get killed by the systems administrators. You can read the documentation in regards to that at https://documentation.cpanel.net/display/ALD/Backup+Wizard
Once the backups have been uploaded to your new server open a ticket and ask technical support to restore the backups for you. After all of them have been restored verify the same from WHM -> List accounts. Make sure you can see all your accounts listed there. Verify that all the web sites are loading without errors from the new server. There are two ways to do that. If the web sites are static or they don’t rely on mod_rewrite rules you can use the cPanel temporary URL which would be http://hostname.domain.com/~username/ where hostname.domain.com would be the hostname of your new server and username would be the username of the cPanel account you want to access the web site for via the temporary URL. If it’s not working you can just use the second method which is more reliable but also requires some more advanced actions to be done. You would need to tedit the hosts file on your computer and point each of the domain names of your clients to the IP of the new server. That will point the domains to the new server but only for your computer. You can find which IP to point the domains to via WHM -> List accounts. If you are running Linux you would need to edit the /etc/hosts file and add the following to it.
220.127.116.11 www.domain.com domain.com
18.104.22.168 is the IP address of the account on the new server. If you are using Windows 8 or 10 use the steps below.
- Press the Windows key.
- Type Notepad in the search field.
- In the search results, right-click Notepad and select Run as administrator.
- From Notepad, open the following file: c:\Windows\System32\Drivers\etc\hosts
- Make the necessary changes to the file.
- Click File > Save to save your changes.
Visit the web site via your browser and if it loads without errors then it is safe to change the nameservers for the domain name to the new ones. If you are using private nameservers complete the migration for all web sites and after that just change the IP’s of your nameservers to the new ones. Make sure to allow at least 48 hours for DNS propogation and do not cancel your old account quickly. Sometimes DNS propogation may take up to 72 hours and terminating the old account will result in downtime.