Should the need exist to change hosting companies, the process must be completed in the proper order.  Not doing so may result in a time window where your site is unreachable; and this is clearly not desirable — from both a general and SEO perspective.  The focus of this elaborate process is to prevent both users and search engines from perceiving that the site is gone — or in the case of virtual hosting, seeing the wrong site.  Search engines do have heuristics for recognizing that these problems exist, but it is better not to rely on this. 

Note: Virtual hosting means that more than one web site is hosted on one IP.  This is commonplace, as the world would run out of IPs very quickly if every web site has its own IP.  The problem arises when you cancel service at your old web hosting provider and a spider still thinks your site is located at the old IP.  In this case, it may see the wrong site or get a 404 error.  This can cause many problems.

Therefore, the proper approach is to have your site hosted at both hosting providers for a little while.  When your site is 100% functional at the new hosting provider, your DNS records should then be updated.  If you are using a managed DNS service, simply change the "A" records to reflect the new web server's IP address.  This change should be reflected almost instantly, and you may cancel the web hosting service at the old provider immediately.  If you were using your old web hosting provider's DNS, you should change to the new hosting provider's DNS.  This change may take up to 48 hours to be fully reflected throughout the internet.  Once 48 hours has passed, you may cancel your service at the old hosting provider.

Note: You do not have to follow these procedures exactly; the basic underlying concept is that there is a window of time where both users and spiders may still think your site is located at the old hosting provider's IP address.  For this reason, you should only cancel after you are certain that that window of time has elapsed.  When you are using managed DNS, and are not changing the DNS records on a domain name — only updating records on your DNS, this time is likely short.  However, if you are changing the actual DNS records on a domain name, it may take up to 48 hours for those changes to be reflected throughout the internet.  Until these 48 hours has elapsed, a user or a spider may see the site at either location.

One helpful hint to ease the process of moving your domain to a new web hosting provider is to edit your hosts file to reflect the new IP on your local machine.  This causes your operating system to use the value provided in the file instead of using a DNS to get an IP address for the specified domains.  The file is located in "C:\WINDOWS\system32\drivers\etc\hosts."  In Unix or Linux it is typically located in "/etc/hosts."  Add the following lines:

xxx.xxx.xxx.xxx  www.yourdomain.com
xxx.xxx.xxx.xxx  yourdomain.com

This will let you access your site as if the DNS changes are made reflected, even if it is a virtual host.  Simply remove the lines after you are done setting up the site on the new web hosting provider’s server.

If you have concerns about this procedure, or you need help, you may want to contact your new hosting provider and ask for assistance.  Explain the above concerns, and hopefully they will be able to accommodate you and put your mind at ease.  If they are willing to work with you, it is a good indication that they are a good hosting provider.

Why is this posted here?  It's the type of thing that people link to — and I like links … :)

Tell an amigo:
  • Sphinn
  • Digg
  • Reddit
  • del.icio.us
  • StumbleUpon
  • Facebook



Related posts:
Finding Spammers' Hideouts RSnake of ha.ckers.org documents in this post how to conveniently...
Virtual Hosting is a Liability I was playing around with the What is Hosted on...
Guide To Multiple Class C Web Hosting There are many rumors surrounding the venerable IP address as...
Tell Your Competitors To Use Network Solutions' DNS Today I ordered my lunch online.  When I hit "confirm,"...
Simple GeoTarget PHP Library This class can be used to detect where a site...