Hi,
Some time ago i touched on a problem between Squid and Netscape Entreprise
Server (NES). Here is a brief recall :
If you configure cache control directives in NES, the suitable HTTP headers
(ex: Cache-control: "max-age=86400") are sent if NES is questioned with
HTTP/1.1, but not with HTTP/1.0.
As Squid announces itself with HTTP/1.0, anyone going throuh a Squid proxy to
access a NES may receive out of date objets.
i've just received the Netscape anwser : they will not do any modification to
NES since it's already compliant to the HTTP/1.1 RFC.
And yes the RFC 2145 says :
-------------------------------------------------
2 HTTP version numbers
It is, and has always been, the explicit intent of the
HTTP specification that an implementation receiving a message
header that it does not understand MUST ignore that header. (The
word "ignore" has a special meaning for proxies; see section 2.1
below.)
One consequence of these rules is that an HTTP/1.1 message sent to an
HTTP/1.0 recipient (or a recipient whose version is unknown) MUST be
constructed so that it remains a valid HTTP/1.0 message when all
headers not defined in the HTTP/1.0 specification [1] are removed.
...
2.2 Compatibility between minor versions of the same major version
An implementation of HTTP/x.b sending a message to a recipient whose
version is known to be HTTP/x.a, a < b, MAY send a header that is not
defined in the specification for HTTP/x.a. For example, an HTTP/1.1
server may send a "Cache-control" header to an HTTP/1.0 client; this
may be useful if the immediate recipient is an HTTP/1.0 proxy, but
the ultimate recipient is an HTTP/1.1 client.
An implementation of HTTP/x.b sending a message to a recipient whose
version is known to be HTTP/x.a, a < b, MUST NOT depend on the
recipient understanding a header not defined in the specification for
HTTP/x.a. For example, HTTP/1.0 clients cannot be expected to
understand chunked encodings, and so an HTTP/1.1 server must never
send "Transfer-Encoding: chunked" in response to an HTTP/1.0 request.
------------------------------------------------
Therefore NES doesn't have to send these headers (when receiving a HTTP/1.0
request) to be compliant.
Off course this behaviour is bothering us, and i guesss any webmaster or
publisher on NES should be concerned.
It is very tough to impose the use of proxy caches, and now our webmasters are
no longer able to control the time-to-live of their ojbects in the cache...
I wonder what is the proportion of squid among all proxies used to access the
internet ?
What can we do ? when my boss will know Netscape answer, i'm afraid we will have
to say bye bye to squid !
Charles Bruneteau
Received on Tue Dec 21 1999 - 03:38:43 MST
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:50:03 MST