When changing domains from “www.olddomain.com” to “www.newdomain.com” it is important to use a 301 redirect from the old to the new, because the 301 redirect is the only one that tells Google and all the other search engines that the move is permanent. This will allow your new domain to retain any search-engine love the old one had.
Another reason to use a 301 redirect is when you own multiple domains for a single site, but these alternative domains never actually hosted your site. For example, you may own domains with dashes and without dashes, or perhaps you own both the .net and .com. This case is a little different in that I’m assuming your alternative domain name never was in Google because it never actually hosted a site. These are sometimes called typo domains, as you are covering your bases for common typos of your primary brand domain. In this case, you can skip steps 1 and 4 in the following checklist.
Here’s a step-by-step checklist on how to 301 redirect one domain to another.
1) Make sure you have both domains listed in Google Webmaster Tools. Login into Google Webmaster Tools and make sure that you have both your old domain and your new domain listed as sites. Use the “Add a Site” button if you need to add either of the domain names.
2) Use your registrar or .htaccess to create a 301 Redirect. These instructions assume that your permalink structure is identical between the old domain and the new domain. If you are changing permalink structure between the two sites, this step will be more complicated, and I suggest you hire a programmer or WordPress developer to help you. By identical permalink structure, I mean that “www.olddomain.com/345/my-post/” will redirect to “www.newdomain.com/345/my-post/”.
a) My favorite way to 301 redirect from one domain to another is by using my registrar. Your registrar is the company you purchased your domain from. Most registrars (but not all) allow you to 301 redirect from one domain to another. My registrar Name.com allows this, and so does GoDaddy.com. The reason I like this approach is that you do not have to have hosting for the old domain. This usually means you SAVE MONEY! This approach usually involves two steps. First you need to select “301 Forwarding” (it might be called something else) and provide the URL of the new domain. Second, you usually need to confirm that you have selected to use your registrar’s default Nameservers. These are probably are on a different screen, so you it might require a few more clicks to get there. Some registrars do the second step for you automatically once you’ve chosen forwarding. Ask your registrar for help if you have any questions.
b) If the registrar option is not possible, you will need to keep a hosting account for your old domain. You will need your old domain hosting account because you need to put a simple text file in the public HTML folder called “.htaccess”. This requires either FTP, or Cpanel access to your old domain in order to upload the .htaccess file. Copy and paste the following code, and be sure to replace www.newdomain.com” with your new domain. Save it as a text file named “.htaccess” (but without the .txt extension) and upload it to the public HTML folder on your OLD site. On most Cpanel hosting accounts this folder is called “public_html” and you will be rewriting OVER your existing .htaccess file.
RewriteEngine on
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,L]
3) Verify that the redirect is a 301 and not anything else. Now type your domain into a browser, and see if the redirect is working. So far so good, but we also need to verify that the redirect is actually a 301 redirect and not a pesky 302. To do this, enter your old domain URL into an http header checker tool, such as this Server Header Checker from SEO Book. This screenshot shows the 301 response you want to see.
4) Tell Google Webmaster Tools about the move. Login to your Google Webmaster Tools account, and select your old domain. Under the settings icon (the one that looks like a cog) choose Change of Address. You will then be able to pick your new domain from your list of sites (this is why you did step 1 first) and click SUBMIT.