How To Migrate Drupal 6 from Powweb to Hostgator

I wrote previously about getting away from Powweb and how happy I was to do so.  So far, the tech support at Hostgator has been MUCH better, and their Drupal support is pretty good too.  There are a couple things that are not as good; I can't change the PHP memory limit, and the basic account limits me to one domain, which makes it harder to do Drupal multisite.  But it is still possible - here's how.

  1. Set up Drupal on Hostgator.  Fantastico only offers Drupal 7 now, and that's too much of a leap for me right now.  They have another automated script installer that still does Drupal 6, but it doesn't really work.  So, manual installation time it is.  The good news: Hostgator has a MySQL wizard that makes it a snap to add a new database and user name, and all you have to do is update your settings.php.  (Hint: the Hostgator MySQL server is at "localhost.")
  2. Turn off clean urls; they won't work until the domain points to the new server.
  3. Upload all the themes and modules you'll need on the new server.
  4. Migrate your content using the "Backup and Migrate" module.  It will automatically turn on the correct modules, theme, etc.  I recommend using the optional Backup and Migrate Files plugin as well.
  5. To forward your domain to the new server, all you need to do is change the nameserver DNS entries on your registrar.  Hostgator makes this easy; they list the nameservers right on your cpanel home page.
  6. To allow subdomains, use the "Subdomains" tool in the Hostgator cpanel.  Warning: This tool likes to create a subdirectory.  You need to manually change the path so it points to /public_html/.
    Tip: *.yourdomain.com is a perfectly acceptable subdomain.  Then you only have to do it once!
  7. Set up your multisite subdomains in Drupal.  Repeat Step #4 above (Backup & Migrate module)

Warning: The Hostgator "hatchling" hosting plan only allows one domain, with unlimited subdomains.  So if you want to use a completely different domain in your Drupal multisite, you have two options:

  1. Upgrade your Hostgator hosting.  The "baby aligator" plan allows unlimted domains.
  2. Create a subdomain and have it point there.  This isn't as pretty, but it won't cost you anything extra.

I chose Hostgator because I've already been using them for 6 months for the Consortium website, and I've been very pleased.  The multisite setup took some extra finagling, but once it's up it works great.  My sites work better and the tech support is fantastic.  I highly recommend Hostgator.