It pays to keep your URLs clean. Preferably just directories, no trailing filenames, and certainly no default.aspx type stuff on the end. Why? Because you’re aiming at humans, most of whom can’t remember that kind of stuff, and don’t want to be bothered typing it.
Everything that Jakob Nielsen wrote five years ago still applies. You want URLs that are memorable, easily typable, short enough to send in emails without getting chopped-up, that don’t automatically add weird parameters screwing up bookmarks and browser autocomplete, and can be passed by word of mouth.
Hey Joe, look at this site. www dot geekrant dot org
wins over
Hey Joe, look at this site. h t t p colon slash slash w w w dot geekrant dot org slash index dot php
every time.
This stuff is not hard. For Apache people, .htaccess works wonders. For the IIS crowd, fiddle with the default page settings. There is no excuse for www.microsoft.com/windows forwarding to www.microsoft.com/windows/default.mspx. Anybody who bookmarks that will be in for a shock the next time they move to a new scripting technology and change their file types.
Hide the default/index.html/asp/aspx/cgi/php/whatever from your users by linking back to your index pages without using the filename… eg root of this directory “./”, parent directory “../” and so on. Also aids in what Nielsen calls “hackable URLs”.
Redesign them by all means, give your 404s options to go to the home page, or search, or a site map. But don’t make your 404s jump to special page, changing the URL. Do you know how irritating it is to get a 404 that’s hidden what you typed, so you don’t know what you got wrong?
Though it’s become kinda fashionable to chop it, I still lean towards including www on the front in URLs, because it means you can put it in written form without the http:// and there’s no doubt what you’re talking about.
PS. Which browser vendor will be the first to hide http:// in the address bar when it’s not needed? Newbies really don’t need to be trying to type that every time, especially as no browser requires it to be entered.
PPS. Yeah I still call them URLs, not URIs. As the W3C says, an http URI is a URL. So there.