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:
- 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"
- 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"
- 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?
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