Upgrading Websites The Right Way



December 04, 2007

I've come across two websites of interest that have been upgraded to Drupal recently and made the same fundamental mistake. So I thought it was worth while blogging about it in the hopes that it might prevent some other good site making the same mistake.

The problem seems to be in not understanding that it is considerably easier to modify the old links on your own site than it is in the browsers, links & caches of users and search engines. Recognizing the legacy that your site has had is a critical mistake in upgrading a website.

In both cases the websites put up redirect pages on their default page to go to their new site. In one case it redirected to a sub-domain that was hosted elsewhere and in the other it went into a sub-directory. It is fine to develop a site on either a sub-directory or sub-domain, but it isn't alright to launch your new website from there as it quickly becomes dated.

It annoys old fans of your website when the old links disappear, but it annoys Google and other search engines more. If you are keeping your old content in www.example.com, but you have your new site running in newsite.example.com then Google will still be pointing people to your old site.

1) If you aren't going to migrate over all of your old content, at least look to see what of your old content Google is referencing. For an example we looked at OpenConcept which presently has over 8000 backward links in Google.

2) Develop your old website elsewhere, but then make sure to move it to the main www.example.com location (the www. is optional of course).

3) If you think your old website might be relevant, move it to a sub-directory or sub-domain so that you can look at your old data and pull from it if required.

4) After you've made the switch, watch the web logs to see what people are looking for. Drupal's logs allow you to filter for the page not found messages. After you're new site is launched it is especially important to watch this and make corrections quickly. The path module allows you to build new aliases.

5) Use a smart 404 page for your site, like that provided by the Search404 module in Drupal. If a user can't find an old link direct them to a search engine to try to find the relevant content.

6) Use 301 redirects to reduce the number of urls with duplicate information in it. This does require more technical abilities than the other ones, but may be worth while, especially if there are links you want the search engines to forget about.

The key point is to do your best to ensure that no visitor is left hanging after you've made the transition to your new site.

About The Author

Mike Gifford is the founder of OpenConcept Consulting Inc, which he started in 1999. Since then, he has been particularly active in developing and extending open source content management systems to allow people to get closer to their content. Before starting OpenConcept, Mike had worked for a number of national NGOs including Oxfam Canada and Friends of the Earth.