SES, SEO, Pretty URLs — call them what you wish, but they’ve been getting a lot of attention lately. Although SEO goes a lot more in depth than pretty URLs, the practice of creating URLs that are easily read can be an important factor in determining search engine position and the overall professionalism of a website.

What is ColdCourse?

ColdCourse is an add-on framework to ColdFusion MVC (like Model-Glue, Fusebox, Mach-II and ColdBox) that allows for robust URL rewriting. It is a port of the amazing routing system used in ColdFusion on Wheels which has most the features of ColdCourse built into the framework. It uses the same sort of mechanism for routing as is found in the routing system for Ruby On Rails, so if you are familiar with that then ColdCourse should be easy to pick up. There are only a few settings to ColdCourse, it is setup completely within a single file, and it only needs to be referenced once within your application. Compared to other add-on frameworks, like ColdSpring or Reactor, ColdCourse solely depends on an MVC framework being in place.

So, why are pretty URLs important? There’s a few camps as to why. Here’s the general idea.

Easily Readable

Imagine going to a site for the first time and looking at the URL only to see something like http://adogo.us/2007/. From this you can gather that you’re looking at a listing of posts for the year 2007. That’s slightly more straightforward than a URL such as http://adogo.us/?y=2007, and considerably more readable than a framework based URL such as http://adogo.us/index.cfm?fuseaction=blog.show&year=2007. Creating URLs that are easily read lets people have control over where they are separate from constraints of a navigation system. It also makes sharing URLs that much more professional. If you’re reading a URL over the phone, a URL with fuseaction in it is that much text that has to be typed and could potentially be misspelled. It also opens up the amount of information you’re sharing with the user. In the fuseaction example, anyone could tell the application is running Fusebox, and some version of ColdFusion. If, at any point in time, there turned out to be a security vulnerability in Fusebox, your site would be far easier to penetrate with that information available to the user.

Search Engine Optimization

SEO is the process of improving your placement in search engines by optimizing a number of characteristics on a website including proper title tags, keyword placement, descriptive headers, pretty URLs, and quite a few more. Back in the day, some search engines would not index the content of pages past the question mark in the URL. Although any search engine worth its salt now will do this, search engines still take into account the text within a URL for some hint as to placement. Although this will in no way affect position if the content of a site is meaningless, searching for blog will put sites with blog in the URL higher if they would have otherwise been the same. The last part is the key though. With the number of factors affecting search engine optimization, it’s hard to say when it is effective. It is, however, one more thing you can do to boost your search engine position.

If you’ve been wanting search engine safe URLs but have been unsure about how to incorporate them into your ColdFusion site, this topic should help you get a handle on ways you might go about doing so. ColdCourse can, theoretically, be dropped into an existing website and work pending a few conventions are met. In this talk I’ll go over incorporating ColdCourse into an existing application and the process of setting it up.