Hi!
A patch for handling If-Modified-Since is attached to this e-mail. Maybe it could be useful.
I've only tested it with Mozilla 1.7.1 (with help from http://livehttpheaders.mozdev.org/). So additional tests would be fine.
New function rfc1123-date for generating a date string for http headers.
Function handle-if-modified-since wants a time and handles almost everything by itself. Checks against If-Modified-Since and returns a 304 return code if necessary.
You have to set the Last-Modified header by yourself because you don't know if you can produce some output at this point. See create-static-file-dispatcher-and-handler in html.lisp for an example.
I've improved create-static-file-dispatcher-and-handler by adding cache functionality with handle-if-modified-since and setting Last-Modified, and a simple check if the file exists. (==> 404 if not). You see that Last-Modified isn't set when the file doesn't exist.
Regards, Stefan