How to Transfer a Site From One Host to the Next
These instructions are for hosting with cpanel and for transferring one site from one host to another host.
First, you go into the File Manager in the cpanel where the site is currently hosted and choose the domain you want to transfer.
When you have a list of all the files, choose select all to select all the files. Once all the files are selected, you can use the Cntrl key to deselect the folders you don’t want, like cgi-bin.
With all the files that you want selected, go to top navigation bar of the File Manager and choose “Compress”. Choose Zip Archive for Compression Type and then in the url box, choose the name that you want to call the zip file. Do not remove any of the path information … just change the name of the zip file to what you want it to be. Then click on Compress File(s) and it will create the zip file from all of the files selected.
EXPORTING THE DATABASE
Select your database name on the left hand side. Go to Export using the tabs in the centre of the screen.
Your next step is choosing what to export (geeky code stuff, scary!)
Click “Select All” at the top and “SQL” of the circle buttons.
Choose the above options under Structure on the right hand side.
Choose the below options under Data.
Next, check Save As file, hit Go and save the .sql file to your desktop.
CHANGING THE DNS TO THE NEW HOST
Now’s a good time to change the DNS to the nameservers of the new host. You do this in the registry where you purchased the domain. You can usually find the nameservers of the new host on the cpanel, often in the sidebar.
Now you need to go to the cpanel of the new host and add the domain on if it is a host with numerous domains. If the new host is just hosting this domain only and it is the main domain for this hosting package, you can skip this step. In your cpanel, go to Addon Domains.
- Go to your domain name registrar company on the Web. Log in to your account by typing your username and password in the appropriate fields. Wait for the page to download completely to see the list of your domain names.
- Select your new domain name. If you have multiple domain names you will want to make sure you choose the correct name. Choose only the name of the domain that you wish to edit.
- Go to the domain name’s control panel or configuration page by clicking on the provided link. Choose the link that will allow you to change the domain name’s name servers from the different configuration options.
- Delete the old name servers from the field and enter the new name servers. Enter the correct name server codes for the primary and secondary fields. Check your new name server for the corresponding codes.
- Save the changes you made. Depending on your registrar company, the modifications you made may take from 24 to 48 hours before they can take effect. It does not usually take this long, but don’t be alarmed if it does.
ADDING ON THE DOMAIN NAME TO THE NEW HOST
This is a screenshot of Hostgator Add-on Domain. Other cpanels hosts will be similar, but may not be exact. In the first box, type in the domain name without the http://. The second and third box will fill in automatically. You then either generate a password, or make up your own and type it in. If you generate one, it will fill it in automatically. You need to make a note of the password, as you will use it to log into your WordPress backend.
CREATING THE DATABASE ON THE NEW HOST
You can create a database through your cPanel.
Create a database.
Name it after your website so you don’t forget.
You’ll also need to create a username and password. Please make note of the password, the database name and the user as you will need this information for your wp-config.php file.
And then create your new user.
Lastly, add your new user to your new database.
Make sure when you add the user to your database that you check all the permissions for your new user. You want this user to have all permissions.
EDITING THE WP-CONFIG FILE.
You’re next step is editing your wp-config file. You need to let WordPress know what database you’re working with. You can find the exact name and user name of the database in your SQL Databases on your cpanel that you just used to create the database. It will have a prefix and you need the prefix plus the name you named the database, (i.e., myhost_nicheblog. The user name will also have the prefix.
You’ll need to update WP-config to show the new database name, username and password. Here’s the part you need to find:
UPLOADING YOUR WORDPRESS FILES
Remember the zip file you created in the beginning of all your WordPress files? If you didn’t download it to your computer, do that now. Then upload the entire zip file to the new server in the public_html (or root directory) of your domain. If there’s only one domain on the new host, the root will be public_html folder. If there are more than one domain, it will be in the domain folder (i.e., public_html/flipace. You should use an FTP (file transfer program) to make this easier. A great (free) one that I use is
After it is uploaded to the new server, go to the File Manager in the new host cpanel and go to the domain. Checkmark the zip file and extract it.
You can use your cPanel details on FTP.
Last step – Uploading the database
You now have a fully functional WordPress blog on your buyer’s hosting plan.
The following is a visual instructions for making the database changes.
In the database, you also need to change the upload path to the new one. Click on the database name in the left panel and then click on Search. Select all and type in public_html for the search. It should come up with a couple of entries in wp_options. Click on the one that says upload path and open it.
One final change to the database is to change the user password to what you want.
PUSHING THE DOMAIN
After you’ve determined that everything is functioning correctly on the new host, it’s time to push the domain to the buyer. You’ve already set the nameservers to his/hers, so now you only need to give it to him.
I use Namecheap.com for my domains and it’s a simple process to push a domain to another person. First, they must have a Namecheap.com acct or an account at whichever registrar the domain is at. Normally, you just go into your domain management functions and click on the domain to see all the options available.
Click on “Push Domain to User” and then type in their user name
Note: The new user must have all their contact info filled out, or the push will fail. If it does, just contact them and ask them to fill out all their contact info.
Note: While it often resolves instantly, it can take up to 24 hours for a domain name to resolve after you change the nameservers. If you can’t log in to the WordPress admin, wait 24 hours and you should be able to log in.
That’s all there is to it.
You can download the full Moving a Site from One Host to Another Host pdf at http://flipace.com/transfer.pdf