5 Steps to Migrating Website Without (or Minimal) Downtime
Numerous emerging technologies make it exceedingly easy to move a website from one host to another. However, no matter how fast the speed of transfer, the average customer may experience some downtime during the transfer process. Depending on what goes on behind the scenes, the transfer of DNS servers between the old and new web hosts can cause a domain to go dark for between for 12 to 72 hours after the request for such a change is submitted to the new registrar.
(Image Source: Fotolia)
Combined with the need to transfer website files, restore important databases, and get every software installations and subdomain configurations in working order, it can take up to a day of inactivity before your site is fully functioning again. There are, however, some pretty great tricks to avoid disaster when transferring a website to a new host server. These tips are relatively easy to do as long as the site’s administrator has a general understanding of cPanel, IP addresses, and more advanced FTP login routines that will enable them to work on a new web hosting plan’s configuration before DNS is altered and transferred to the new host.
At the end of the day, if the average customer is completely unaware of any changes being made behind the scenes, then the mission is a success!
1. Complete Your Move Before Cancelling
Do not cancel an existing web hosting plan before the move is complete.
The most common mistake made by web tie administrators who are new to web hosting in general, or new to transferring their websites between servers, is that they almost immediately contact their old host to inform them of their decision to move their services to a new company’s servers.
(Image Source: Fotolia)
While it’s certainly a good idea to inform the old web host in a timely manner about future changes, doing so before the transition has been expertly executed can result in not just downtime, but a complete loss of files and database information from the moment a cancellation is requested.
Hold that Call
Web hosting companies generally cancel a plan almost immediately – as in as soon as the customer’s call has ended – without waiting for the expiry of the current month’s service or subscription fee. This is seen as serving the consumer’s best interest, as they get an immediate and prorated refund of any remaining fees.
However, it also means that the company will virtually trash every shred of information that has been uploaded to the server during their time with the company. There will be no opportunity, in many cases, to retrieve these files and move them to the new web hosting company’s server or shared hosting plan in time.
That’s the kind of downtime that is extremely hard to recover from, as it potentially means a loss of all content and subscriber data, as well as commercial losses and customer payment details for some websites.
What To Do
Once a new hosting plan has been secured, transfer all files before canceling the existing hosting plan held by the old company. It might be a good idea to allow the website to run on the new company’s servers for a few days just to ensure that nothing was overlooked during the move.
When everything has been verified as properly transitioned, only then should the old hosting plan be cancelled.
2. Downloading your Backup Files
Login to cPanel and obtain compressed backups of website files and database information.
For pure ease of use, customers moving to a new web host should ensure that both the new and old hosting companies employ the same web-based administration technology. Typically, this will be a choice between cPanel and the slightly less-popular PleskPanel website control panel.
Aligning the technology employed by both hosts is the easiest way to ensure that data can be quickly backed up and restored in just as quick a fashion. For the cPanel control panel option, which is virtually the standard in web hosting, customers should navigate to their domain with the 2082 port number attached.
For reference, it looks like this in a web browser’s address bar: http://my-site.com:2082. Alternatively, http://my-site.com/cpanel might work for some websites:
Locate the Backup Page
After successfully logging into the cPanel interface, locate a group of settings and control panel pages labeled “Backup.” This contains tools to backup the site’s main “public_html” folder as well as any subdomains. Additionally, the tools here will assist web hosting customers in the backup of their MySQL databases for restoration to the new server.
Find the “Download Backups” option within this grouping, and click through to the relevant cPanel administration page.
On this page, cPanel will break down the available backups by type. A full-site backup is available; they should download that file so that it can be uploaded to a different host later. There will also be backup files specific to every subdomain within the website. These are generally optional, since the full website backup will contain all of that information, but to be safe, you can download these as well.
In a separate area on the same backup downloads page, customers can secure a compressed backup of every MySQL database individually. Each database should be downloaded in its compressed format. These will be uploaded to the new server to create matching database names at a later time.
Do not Decompress!
During this process, be sure not to decompress any of the downloaded backup files. This is because this process will be completed by the new server when the file is uploaded by the customer.
For Mac OS X users, ensure that Safari is not set to automatically open so-called “safe” file extensions after download. Doing so will ensure that the file remains uncompressed and ready for quick restoration. When all of the compressed backup files are secured, log out of the old host cPanel installation and head over to the new host’s version of the popular website administration software.
3. Making the Transfer
Begin uploading the compressed backup files to the new server.
Virtually every web hosting company will, after receiving the first month’s fee, send an email bearing information like the domain name servers and IP address details for the new hosting plan. This IP address can be used to view the website’s content before DNS propagation, and to access the individual FTP account and cPanel administration interface before changes are made.
Find this email and look for the relevant IP address. If a cPanel link has not been specifically included, assume that either “/cpanel” or the “:2082″ port suffix can be added to that IP address in order to enable an administrative login.
Upon logging into the new server’s cPanel iteration, locate the backup tools mentioned in Step 2 then navigate to the Backup Downloads page. At the page, locate the file-upload box associated with the full-site backup. This will often be labeled as a “Backup Restore” feature. Select the full-site backup file that was downloaded from the old web hosting company to begin the upload process.
After the file is completely uploaded, the webpage will refresh and file-specific details will be displayed on a line-by-line basis as each file is moved into place. When this second page stops loading, the process is complete. Locate the browser’s “back” button to return to the previous page and begin the database restoration process in pretty much the same fashion. When all of the information is transferred, it’s time to adjust some settings and begin the actual seamless transition process behind the scenes.
4. Make Sure the Databases Work Properly
One thing to note is that the database backup files do not contain information about the usernames, passwords, and permissions associated with each MySQL database. This information will need to be entered within the MySQL Databases interface within cPanel.
Also, note the prefix assigned to each database within cPanel. In case of discrepancies, (e.g. "jsmith_wordpress" vs "jsm_wordpress"), the prefixes will need to be changed in the configuration file of each software application which connects to that database.
All Relevant Info
Add all of the relevant users, passwords, and permissions, and then make any necessary edits to system files by logging into the FTP account via the website’s IP address. This will ensure smooth operation of the software once the domain name has been transferred to show the new host’s files instead of those located at the old company. Once that is done, everything is in place and ready to function perfectly.
All that needs to be changed now is the information which tells the domain which of the two hosting accounts’ files to display to the end user.
5. Switch To New Name Servers
Tell the domain registrar to use new domain name servers
The final step of the process is simply to tell the domain name to show files and data on a different server than the one in current use. This is done by logging into the domain registration control panel provided by the domain registrar (services like GoDaddy or Hover, for example).
Within this control panel, a heading or sidebar item named “Domain Name Servers” should show up, and the current information placed into that area should look like this:
These need to be replaced with the new name servers (also found in the email) for the new host. (If this information is not found, navigate to the host’s support section, browse their documentation or get in touch with a representative who can provide the server details.)
Changes to the DNS records will take effect in 12 to 24 hours in most cases, though some have experienced as little as six hours. During this time, both the new and old websites will function properly, and customers will see identical content no matter which hosted files are presented.
Wait For Complete Propagation
Do keep in mind that posting content before propagation is complete might result in lost content or data after the new host files are active. While downtime won’t be an issue, website owners should refrain from making any changes to a site’s design, files, or content, until they’re completely sure that the process is complete and they’re accessing the new host server.
When that becomes the case, the process of transferring a website seamlessly to a new web hosting provider is complete and users will have survived the transition without a second of downtime.
Be sure to test the website and ensure that all features are working properly; when everything is working just like it used to, then you can cancel the old hosting plan. That’s all there is to it!
This post is published by a Hongkiat.com staff (editors, interns, sometimes Hongkiat Lim himself) or a guest contributor.