Overview
DreamHost offers several methods to help move your WordPress installation to a new domain name. This article lists two methods to help you accomplish this.
These instructions can be used with any WordPress site. However, if your site was created using the DreamHost WordPress installer, the DreamHost panel offers an easier way to move your site to a new domain. View the following article for more information:
Method 1 — DreamHost's Content Move Service
DreamHost offers a variety of services, including moving WordPress between domains. View the following article to view the different options available.
Method 2 — Manually moving your site
You can also manually move your site yourself. The following instructions describe how to move a WordPress installation between two domains hosted at DreamHost. The example domains used in these instructions are:
-
oldsite.example.com
and - newsite.example.com
Step 1 — Back up your data
You should always backup your data before making any change to your site. View the following article for instructions on how to backup your web site files, database, and any email you wish to keep:
Step 2 — Add hosting for the new site
Add the new domain (newsite.example.com) to your panel. Make sure to set it as Fully Hosted:
Step 3 — Create a new database
Navigate to the MySQL Databases page and create a new MySQL hostname and empty database.
Step 4 — Transfer your WordPress installation
Transfer the WordPress files you’ve backed up in step one to your new domain. If you had email addresses on the old site (oldsite.example.com), make sure to create the same addresses on your new domain. You can then transfer those emails.
- Upload your web files using the following article:
- Upload your database using the Migrate MySQL article:
- Transfer email from your old domain:
- Email Setup: Use this article to set up your email addresses on the new domain.
- Import another host's email into DreamHost: This article explains how to import your email to the new domain.
- Email Client Configuration: This article is a guide to different email configurations you can use.
Step 5 — Edit the new wp-config.php file
Log into your new site (newsite.example.com) via FTP or SSH and open the wp-config.php file (this is in your site's directory). You’ll see the following contents:
define('DB_NAME', ‘exampledatabase’); define('DB_USER', 'exampledbuser'); define('DB_PASSWORD', ‘database password here’); define('DB_HOST', 'mysql.example.com'); define('DB_CHARSET', 'utf8'); define('DB_COLLATE', ''); $table_prefix = 'wp_2hdy121d_';
Update the following:
- Database name
- Database user
- Database user password
- Hostname
- Replace the existing WordPress $table_prefix value with the imported $table_prefix value.
Open the database file you previously downloaded in a text editor to view the correct prefix of each table. The example below shows what you will see. In this example, the table prefix is wp_mwpp89_.
-- -- Table structure for table `wp_mwpp89_comments` --
Step 6 — Update all URLs in the database
You must now update all URLs in the database since the database is using the old URL. View the following article for several options on how to accomplish this:
When you update all URLs, the HOME and SITE URL will also be updated.
At this point, your website should load normally on the new domain name.
Summary
Once the above steps are complete, the new site looks exactly the same as it once appeared on your old domain name.
Redirecting from the old site
It's possible that former visitors to your old website have bookmarked the old URL in their browser. You can automatically redirect them to the new website by logging into the old domain name and creating an .htaccess file with a 301 redirect.
View the following article for examples of how to configure this: