I want to develop a Drupal site on a testing domain of mine, then once I complete it I want to transfer it to the main domain.

Could there be any major or minor complications transferring one Drupal site on a domain to another domain?

Once its up and running on the new domain, will it have any news bugs or quirks to watch out for? Or would you guys altogether advise another way?

Thanks,

Comments

slnm’s picture

I'm working on a Drupal 6 site and I've got a development domain and a production domain and I copy from development to production fairly frequently. Here's what I recommend:

1. Install core Drupal (the same version) on domains A and B.
2. Verify that Drupal works fine on the two domains.
3. Make sure that your themes and modules files are in the same directory structure in each deployment: e.g. custom themes in sites/all/themes and non-core modules in sites/all/modules and/or in sites/all/modules/custom
4. Avoid absolute URLs.
5. Do your module, theme, and database (module settings and content) on site A.
6. Install the Backup and Migrate module on the two domains: http://drupal.org/project/backup_migrate
7. To clone site A to B run backup_migrate on site A to make a snapshot of your database and make a zip file or tar ball of your custom themes and modules directories then overwrite the directories on site B from that zip or tar ball and run backup_migrate on site B to restore the database from the image you made on site A.

A few things to note:

1. Your theme on B might appear to be messed up after the transfer. Go to this URL on site B to refresh it: http://[site-B]/admin/build/themes
2. I've run into weird problems that were fixed by clearing the cache. On site B, go to http://[site-B]/admin/settings/performance and click the "Clear cached data" button.
3. Avoid mysql backup methods that put the database name into the mysqldump file. The demonstration module, for example, does this. backup_migrate creates the mysql commands that drop and recreate the tables but don't drop the database. Trust me, you don't want to drop and recreate the database or you'll likely run into problems where your settings.php file has the wrong database name or your grants on site B get all messed up because of the database drop.
4. Backup anything you care about. I.e. don't put yourself in a situation where something goes wrong (or you copy in the wrong direction and destroy your development site) and lose all of your work.
5. This recipe is for Drupal 6. I've not used Drupal 5 so I can't verify that it works on that version.

CAZephyr’s picture

We would always advise that you work in a test/dev environment first, and only go live once you have everything working to your satisfaction. That's absolutely vital when first building the site, but also highly recommended when making changes to a working site.

For a reasonably complex site you would probably have to tweak the htaccess file when going from one domain to another. But there shouldn't be any major issues to worry about. If your site gets really complex there might be a few minor issues but for complex sites it's even more important that you get your testing out of the way before you go live.

Feel free to look thru the forum to see what issues people might have encountered. Chances are whatever issues you might be worried about have already been dealt with by others in the forum.

luminusxp’s picture

Sounds good. Thank you all for your help. I really appreciate it. It was also good that you gave me step by step advice, good counsel.

It was definitely something that i was unsure about. Now I feel like it will work out.

Take Care Guys,