Re: De Re If-Modified-Since

On Thu, 17 Aug 1995, Lou Montulli wrote:
> In article <Pine.SOL.3.91.950816235241.604L-100000@eat.organic.com> Brian
> Behlendorf <brian@organic.com> wrote:
>  http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-v10-spec-02.html#If-Modified-Since
> > 
> > | A conditional GET method requests that the identified resource be
> > | transferred only if it has been modified since the date given by the
> > | If-Modified-Since header. The algorithm for determining this includes
> > | the following cases:
> > 
> > | a) If the request would normally result in anything other than a 200
> > |    (ok) status, or if the passed If-Modified-Since date is invalid, the
> > |    response is exactly the same as for a normal GET.
> > 
> > Check out "if the passed If-Modified-Since date is invalid".  I don't
> > know any sane server author who would consider a date of Last-Modified
> > after the current server date as "valid", but I suppose that is a matter
> > of webmaster opinion (and thus server config?)  I would certainly
> > consider it invalid, just as I would consider If-Modified-Since: Uranus
> > invalid.
> 
> Well that's how I interpreted it as well, but several people
> responded over the last couple of days that it was the intention
> of the spec to accept any date equal to or past the current
> modification date of the file.

I remember you (and/or Rob McCool) proposed just doing a straight string
compare of the LM and IMS (LM = IMS), which is *different* than LM < IMS <
CURRTIME.  If you implemented the latter in the Netsite, the Apache group
will put it in Apache, I bet Chuck would put it in Webstar and Henrik would
put it in CERN and Brandon would put it in NCSA.  Deal?  I honestly think we
would address the most serious aspects of the incorrect-time problem without
forcing a change to the HTTP protocol by doing this. 

> > As an attempt to reach common ground, I will say that I think the
> > proposal floated about a generic If-Modified-<any response header> header
> > might be a good idea.  Thus, you can have If-Modified-Content-Length if
> > you want.
> 
> Making it a separate header adds 20 characters to the request that
> would not be needed if "; length=" were sent instead.  We should
> use the standard MIME method of extending headers by using semi-colon
> delimited name value pairs.

Okay, howbout

If-Different: Date > DATE; Content-length != SIZE; Content-type != text/html;

where the conditions are OR'd, and quantities are compared (so we can 
still have the functionality of IMS  where LM < IMS < CURRTIME).  
Hopefully the syntax could allow queries like "give it to me if it's a 
larger file" or "give it to me if it's a higher level of HTML" or 
something.  Thoughts?  This could even be really powerful on arbitrary 
HTTP headers.... and open to abuse of course.

	Brian

--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--
brian@organic.com  brian@hyperreal.com  http://www.[hyperreal,organic].com/

Received on Thursday, 17 August 1995 00:49:21 UTC