Versioning CSS and images

We implemented a secondary version control technique for Wired News images and CSS files this week. Images and CSS files have been moved one level deeper than they were, into a folder named according to the current release date (ie: 20020917). Each major revision or addition we make can be grouped into a new version release, and each dated folder will include every image and CSS file, so that all files can be referenced relatively, without needing to reference anything outside the dated folder. For instance, all CSS files will temporarily live in /news/v/20020917/css/, and all images will live in /news/v/20020917/images/ until the next major version change. (The v folder stands for “version”, and exists purely to group all of the dated release folders together so they don’t clutter up the root of /news/.)

The Akamai URI strings provide one means of version control and make it possible to update cached image and CSS files. But we want to ensure we have direct control over how and when the files get updated. Chaning the timestamp in the Akamai string may lead to unpredictable results across all their servers. But we can know for sure the new files will be re-cached if we change the date version number of our file’s physical path.