A URL is (maybe not) forever
Last year, I wrote that A URL is forever. Well, like any good hypocrite, I went and changed my URLs yesterday.
I used to have URLs like:
/blog/2007/5/a-url-is-maybe-not-forever
Originally I thought having the date in there would make my site more scalable, so in 100 years (ha!), I wouldn't have a problem of finding a unique URL for my blog posts. Yesterday, I decided I'd rather have shorter URLs and just make myself come up with unique URLs for my blog posts (a matter of taste, really). So now my URLs look something like this:
/blog/a-url-is-maybe-not-forever
So yes, my URLs weren't forever. But I didn't just change them all and break all the old URLs. No, the original URLs all still work. To do this, I added a 301 (permanent) redirect to my .htaccess file, like this:
RewriteEngine on # need this forever RewriteCond %{REQUEST_URI} ^/blog/d{4}/d+/.+ RewriteRule ^blog/d{4}/d+/(.*)$ http://www.thefutureoftheweb.com/blog/$1 [L,R=301]
Now, for the life of this site, I have to support both styles of URLs (at least for all blog posts posted before today). That's a sacrifice I'll have make to have shorter URLs. And that's really what's important: once a URL is released into the wild, it should always bring someone to the page it originally referenced, even if the preferred URL for that page changes.