Bad URLs Part 4: Choose your future

So we’ve looked at examples of bad and good URLs, what the current situation is at Edge Hill, but what are we doing about it?

Lots, you’ll be pleased to know! As part of the development work we’ve been doing for the new website design, I’ve been taking a long hard look at how our website is structured and plan to make some changes. There are two areas to the changes – ensuring our new developments are done properly and changing existing areas of the site to fit in with the new structure.

Firstly the new developments. We’re currently working on three systems – news, events and prospectus. News was one of the examples I gave last time where we could make some improvements so let’s look at how things might change.

Firstly, all our new developments are being brought onto the main Edge Hill domain – www.edgehill.ac.uk – and each “site” placed in a top level address:

http://info.edgehill.ac.uk/EHU_news/
becomes:

http://www.edgehill.ac.uk/news

News articles will drop references to the technology used and the database IDs:

http://info.edgehill.ac.uk/EHU_news/story.asp?storyid=765
becomes:

http://www.edgehill.ac.uk/news/2008/01/the-performance-that-is-more-canal-than-chanel

In this example the new URL is actually longer than the old one, but I can live with that because it’s more search engine friendly and the structure is human-readable. For example we can guess that the monthly archive page will be:

http://www.edgehill.ac.uk/news/2008/01

This idea is nothing new – for the first few years of the web most sites had a pretty logical structure – but it’s something that has been lost when moving to Content Management Systems.

The online prospectus is getting similar treatment where courses are currently referenced by an ID number the URL will contain the course title:

http://info.edgehill.ac.uk/EHU_eprospectus/details/BS0041.asp
becomes:

http://www.edgehill.ac.uk/study/courses/computing

As part of our JISC funded mini-project, we’ll be outputting XCRI feeds from the online prospectus. The URLs for these will be really simple – just add /xcri to the end of the address:

http://www.edgehill.ac.uk/study/courses/xcri

http://www.edgehill.ac.uk/study/courses/computing/2009/xcri

In the news site, feeds of articles, tags, comments and much more will be available simply by adding /feed to the URL. Same will apply to search results.

All this is great for the new developments, but we do have a lot of static pages that won’t be replaced. Instead, pages will move to a flatter URL structure. For example, the Faculty of Education site will be available directly through what is currently the vanity URL meaning that most subpages also have a nice URL:

http://www.edgehill.ac.uk/Faculties/Education/Research/index.htm
becomes:

http://www.edgehill.ac.uk/education/research

Areas of the site which were previously hidden away three or four levels deep will be made more accessible through shorter URLs.

How are we doing this? The core of the new site is a brand new symfony based application. This allows us to embed our dynamic applications – news, events and prospectus – more closely into the site than has previously been possible. symfony allows you to define routing rules which while look complex on the backend because of the way they mix up pages, produce a uniform look to the structure of the site.

For our existing content we’re using a combination of some lookup tables in our symfony application and some Apache mod_rewrite rules to detect requests for existing content. All the existing pages will be redirected to their new locations so any bookmarks will continue to work and search engines will quickly find the new versions of pages.

That’s all for this little series of posts about URLs. Hopefully it has helped explain some of my thinking behind the changes. If you’ve got any questions then drop me an email or post a comment.

2 thoughts on “Bad URLs Part 4: Choose your future

  1. Pingback: rpsblog.com » A week of symfony #58 (4->10 february 2008)

  2. Pingback: Symfony.es » Blog Archive » Una semana con Symfony #31 (4-10 febrero 2008)

Comments are closed.