Insiders Tips - Migrating to a new Website Hosting Provider
A lot of people run their website by paying a web host for servers space. The web host handles the management of servers, while you handle the operation of your website. You want to pick the right web host because moving a website can be a hassle, if not done properly.
Pointers for moving your website to a new website hosting provider:
We are going to assume that you run a website and are familiar with how domain name registrars and web hosts, in general, work. For this example, we are going to migrate a WordPress blog so that we can show you how to move files as well as databases.
1. Copy your files.
Start at your old web host and fire up your favorite FTP program. FileZilla is a popular FTP program that is free. Connect to the old web host and navigate to the folder of the website that you are moving. Highlight that folder and download it. The folder should have all your pages, images, WordPress files, and everything. Downloading the entire folder at once preserves the directory structure in tact. If you already keep a copy of that site locally, don't overwrite your local copy. Instead, copy the current site into a new folder. It is safer. That way, if you discover any issues, you haven't touched your backup.
2. Export your database tables.
Next, login to your database management interface, like phpMyAdmin. Select "export" and choose the tables of the site you are moving. Select to compress as a "zip" file and press "go". Finally, check to see if there are any other site elements in other places. Sometimes CGI scripts are kept in a directory outside of the main site folder. Copy any other data that you can think of.
This video tutorial explains how to use phpMyAdmin to manipulate database files.
3. Upload your files and database at your new web host.
Go to your new web host. Create a domain record for the new version of the site. Don't redirect the domain name there, yet. You want to get the new site up and running first. That way there is no outage. Reverse the process and upload the folder you just downloaded from the old host. Now, go to the database interface at the new host. Select "import", browse to the zip file that you just exported from the old site, and press "go". Finally, restore any of those odd-ball files you downloaded earlier. CGI scripts might work in a different way with the new web host. So, read up on the documentation and put the scripts where they need to go. Update any paths that change. For example, with WordPress you will need to update wp-config.php to point to the new database and probably with your new password. You can do this with a simple text editor.
It's easy to install WordPress in your cPanel control panel.
4. Test your site.
Test the site before you change the domain name to point to it. Your new web host will provide a way for you to test the site without the domain name. Some things might be broken if you had absolute paths coded, but you should get the idea if everything is there. Correct any errors you see. Test and re-test.
5. Redirect your domain.
Redirect the domain. Before you do, make a slight insignificant change to one of the pages on the new web host. That way you will know when the domain name has changed. Go to your domain registrar's site, and edit the name servers. These are the servers at your web host that resolve the domain name to the directory where you have your site. Get the new name servers from your new web host and edit the domain record accordingly. Now wait! Sometimes the domain will switch almost immediately, and sometimes it can take 24 hours. This is why you made that subtle change earlier. So, now you can re-load that page and if you see the change, you will know the domain is now pointed at the new site. Now you can do more testing. Login to WordPress, make sure the new database is working right. Check all your links. Once you are satisfied, that's it! We recommend keeping your old files at your old web host for a couple of weeks just to be sure that everything is working properly. Now enjoy your new web host!