> 9. Define whether headers such as Expires and Last-modified are to
> modify a cache's state if they accompany a 304 response. (There may
> also be other responses for which this is a relevant question).
Absolutely. This is what both Netscape and CERN (if I recall) proxies
currently do already.
> 10.(a) Define what is supposed to happen when a cache receives a
> request for a document in the cache after its Expires date, it
> attempts to validate the document and receives a 304.
> May or must the cached "expired" copy be served or should the proxy
> return 404 (not found)?
It should service it from the cache. It would be silly returning 404
-- why would you do IMS GET in the first place, if you wouldn't be
willing to service it from the cache. The content of an expired
document is still valid if the remote server says it hasn't changed.
Only if it sends 404 itself, the proxy should forward it (and delete
it from the cache).
> (b) Define what is supposed to happen when a cache receives a request
> for a document in the cache after its Expires date, it attempts to
> validate the document and receives some error message (e.g. 404). May
> or must the cached copy be served or should the proxy forward
> the error message it receives?
404 *must* be forwarded. The cached copy *must never* be returned.
This should be the case if the remote server sends any of the 4xx
codes, except maybe for 408 request timeout.
Cheers,
--
Ari Luotonen ari@netscape.com
Netscape Communications Corp. http://home.netscape.com/people/ari/
501 East Middlefield Road
Mountain View, CA 94043, USA Netscape Server Development Team