When someone contributes the work or funds development. Adrian 2008/9/4 Markus Karg <karg@xxxxxxxxx>: > Is there a plan when HTTP/1.1 completely will be supported in all sides? > I mean, I hardly can't believe it -- HTTP/1.1 was specified in 2008. Why > waiting so long? > > Thanks > Markus > >> -----Original Message----- >> From: Amos Jeffries [mailto:squid3@xxxxxxxxxxxxx] >> Sent: Mittwoch, 3. September 2008 15:40 >> To: Markus Karg >> Cc: squid-users@xxxxxxxxxxxxxxx >> Subject: Re: min-fresh / max-stale not working? >> >> Markus Karg wrote: >> > Sorry it was a typo. The test was done mit SQUID-2.7-STABLE4 >> actually. >> > The HTTP/1.1-Support is only experimental??? >> >> Brand new in 2.7 and some bugs still being found. >> It's also only on one side of Squid, the one which links to Servers >> IIRC, so the client-facing code is still HTTP/1.0-only. >> >> Amos >> >> > >> >> -----Original Message----- >> >> From: Amos Jeffries [mailto:squid3@xxxxxxxxxxxxx] >> >> Sent: Mittwoch, 3. September 2008 07:14 >> >> To: Markus Karg >> >> Cc: squid-users@xxxxxxxxxxxxxxx >> >> Subject: Re: min-fresh / max-stale not working? >> >> >> >>> Dear SQUID Community, >> >>> >> >>> it seems as if SQUID is not dealing correctly with "min-fresh" and >> >>> "max-stale": >> >>> >> >>> Currently we are evaluating the use of SQUID-2.6-STABLE4. It all >> >> seems >> >>> to work pretty well, but just "min-fresh" and "max-stale" is not >> >>> working. Our client agent wants to guarantee to get data that is >> >> fresh >> >>> for a specific amount of time. So we provide "min-fresh=3500" and >> >>> "max-stale=0". To verify SQUID's behaviour we have programmed an >> >> origin >> >>> server the always responds with some static headers and entity >> data, >> >> and >> >>> a client that requests exactly that information, via SQUID as a >> >> proxy. >> >>> The client uses the Cache-Control header with a min-fresh=3500 and >> >>> max-stale=0 value, and the server is always sending data with a >> >>> max-age=3600 value. But the client gets from SQUID a 200 OK >> response >> >>> having max-age=3600 and Age=502! So, the current age of 502 plus >> the >> >>> desired min-fresh of 3500 is 4002, minus the max-stale of 0 still >> is >> >>> 4002, what is much more than the max-age of 3600 -- so the request >> >>> cannot be satisfied without a warning, since the response will not >> > be >> >>> fresh long enough! So we expect to get at least a Warning header. >> > But >> >>> there is none! It looks like SQUID just ignores the min-fresh=3500 >> >> and >> >>> max-stale=0 headers! >> >>> >> >>> The HTTP/1.1 specification says: >> >>> 13.1.2 Warnings >> >>> Whenever a cache returns a response that is neither first-hand nor >> >>> "fresh enough" (in the sense of condition 2 in section 13.1.1), it >> >> MUST >> >>> attach a warning to that effect, using a Warning general-header. >> >>> also it says: >> >>> 13.1.1 Cache Correctness >> >>> If a stored response is not "fresh enough" by the most restrictive >> >>> freshness requirement of both the client and the origin server, in >> >>> carefully considered circumstances the cache MAY still return the >> >>> response with the appropriate Warning header. >> >>> >> >>> In the default case, this means it meets the least restrictive >> >> freshness >> >>> requirement of the client, origin server, and cache (see section >> >> 14.9) >> >>> So for me it looks as if SQUID is buggy, since it does not add the >> >>> mandatory Warning header. Can that be true? Or do I have to enable >> >> some >> >>> switch like "HTTP/1.1-Compliance = YES"? >> >> Squid 2.6 is HTTP/1.0 only. For any HTTP/1.1 stuff you will need >> > Squid >> >> 2.7 and its experimental support. >> >> >> >> As for the cache controls, someone more knowledgeable will > hopefully >> >> speak >> >> up. >> >> >> >> Amos >> > >> >> >> -- >> Please use Squid 2.7.STABLE4 or 3.0.STABLE8 > >