How best to migrate from one domain to another?
November 11, 2005 2:59 PM   Subscribe

How best to migrate from one domain to another?

Let's say I have a website at project.foo.com and I want to move it to its own "project.com". At some time in the future, project.foo.com will cease to operate.

How do I best migrate? And by best I mean "with the least, shortest disruption to visits from both search engines and human beings"

I can redirect by
  • changing the content to inform visitors of the new URL
  • using HTTP-EQUIV tags in pages
  • sending 301 HTTP headers from a script
  • using .htaccess files
  • changing the DNS entries
but which should I do, and when?

Let's say I absolutely don't want to lose a single hit from regular human browsing. I can imagine a very careful long-term transition like:
  1. keeping the content, but adding a message to each page on the old domain: "project.foo.com/bar.htm will shortly move to project.com/bar.htm, please note"
  2. moving the content and leaving only the message on each page: "project.foo.com/bar.htm has moved to project.com/bar.htm, please note"
  3. after a certain period, removing all the pages, and redirecting any hit anywhere on project.foo.com to a "this whole domain has moved" page.
That seems like a good strategy for keeping my human hits, but it looks like a bad strategy for Google, etc.

So, say I just redirect the DNS? Or make every page issue a 301?

Presumably Google and other such agents (after a few hours downtime while the change propagates) will "see" the change, and redirect their links/update their database as required. But the humans might not have noticed. They ask for the content, they get the content. Why should they notice a new URL in the URL bar? So, they keep using their old bookmark and they haven't noticed the migration.

Should I attempt to to detect the fact that they came to project.com via a request to project.foo.com, and tell only those people that they should update their bookmarks?

Bonus question: am I over-thinking this?
posted by AmbroseChapel to Computers & Internet (6 answers total) 2 users marked this as a favorite
 
When I migrated from a .cx to a .com domain, I had almost a year of overlap.
I used a simple RewriteRule to redirect all incoming requests looking for .cx, to a CGI that generated a "PLEASE UPDATE YOUR BOOKMARKS" page with a link to click to the new URL.

It seemed to work, but now I don't know or care because the .cx domain is long dead. :)
posted by jozxyqk at 3:21 PM on November 11, 2005


IMHO, you are over thinking this.

Copy all content to your new site.

On the day of the transition, use a javascript redirect to repoint people to the new site. Have the script wait 3 seconds and display "project.foo.com has moved to project.com, change your bookmarks".

Don't explain things in advance, people won't do anything about it until they need to do something.

People and google will all swerve to the new site soon enough. After a couple weeks, simply do the complete DNS change and stop using the redirect script.

If you have good stuff, people will find the good stuff and put up with a little change.

In the case of Google, fresh links to the new location is your best bet. Ask your readers to help spread the word about the changes and that linkage will help.
posted by Argyle at 4:36 PM on November 11, 2005


Google Information for Webmasters - #2 has the answer to this straight from the horses mouth.

Summary:

301s are essential. Updated links elsewhere (esp. other pages of yours with high Page Rank) are great. Use google to find who is linking to your old page and notify them of the change.

Also, any reason why project.foo.com has to ever disappear? It could forever serve 301s, ensuring that NO human hits are lost, even from stale browser bookmarks. Just a thought.
posted by slhack3r at 10:54 PM on November 11, 2005


Definitely use permanent (301) redirects (make sure you're not accidentally using 302), and leave them in place as long as you can. Any other method won't let the search engines know that the new locations are direct replacements for the old ones.
posted by malevolent at 1:11 AM on November 12, 2005


I *really* think you're overthinking this. I don't see the need for any of that stuff. Just put up the new site on the new domain and 301 every URL on the old site. Then leave everything in that state for as long as possible. You don't have to warn people ahead of time. The 301 will work equally well for humans and google alike.

I have never understood that "This page has moved, please update your bookmarks!" crap. I don't think I have ever paid any attention to it. There are only two possibilities here:

1. The old site is still functional and redirects to the new site. Why should I bother changing anything? The links still work.

2. The old site has ceased to exist, so the bookmark no longer works. But if I had the site bookmarked then it had to have been a site I cared about for some reason, and so I would just put the title of the site or a few keywords into google and find the new site. I mean, this is a site that I was interested in for some reason, so I would be motivated to find out what happened to it.

I guess if you wanted to, you could check the referer on the new site and see if the visitor came from the old site, and display some "update your bookmarks" text if they did. But honestly, I don't see that being necessary. Most people find stuff through search engines anyway and as long as you 301 your site google and the rest of the world will have absolutely no problem finding the new url.
posted by Rhomboid at 2:08 AM on November 12, 2005


Response by poster: Thanks, slhack3r and malevolent.

Why can't project.foo.com stay there forever? Cost, I was thinking, but you're right in principle. I should keep it there as long as I can.
posted by AmbroseChapel at 2:11 AM on November 12, 2005


« Older Are there good examples of the design *process*...   |   Name that plug socket. Newer »
This thread is closed to new comments.