On Mon, 17 Oct 2005 00:16:32 +0200 (CEST)
  Henrik Nordstrom <hno@squid-cache.org> wrote:
> On Mon, 17 Oct 2005, Evgeny Kotsuba wrote:
> 
>> ------8<---------------------------------------------
>> 1129493582.720   2000 127.0.0.1 TCP_REFRESH_HIT/200 455 GET 
>> http://images.rambler.ru/m3/w/l-i-Flagged.gif evg DIRECT/81.19.66.65 
>> image/gif [Host: images.rambler.ru\r\nUser-Agent: Mozilla/5.0 (OS/2; 
>>U; Warp 
>> 4.5; en-US; rv:1.4.1) Gecko/20031121\r\nAccept: 
>> video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1\r\nAccept-Language: 
>> ru,en-us;q=0.7,en;q=0.3\r\nAccept-Encoding: 
>>gzip,deflate\r\nAccept-Charset: 
>> KOI8-R,utf-8;q=0.7,*;q=0.7\r\nKeep-Alive: 300\r\nProxy-Connection: 
>> keep-alive\r\nReferer: xxxxxx\r\nCookie: 
>>XXXXXXX\r\nProxy-Authorization: 
>> Basic ZXZnOjEyMw==\r\nPragma: no-cache\r\n] [HTTP/1.1 200 
>>OK\r\nServer: 
>> nginx/0.2.0\r\nDate: Fri, 07 Oct 2005 22:30:19 GMT\r\nContent-Type: 
>> image/gif\r\nContent-Length: 132\r\nLast-Modified: Tue, 30 Dec 2003 
>>14:21:08 
>> GMT\r\nConnection: keep-alive\r\nKeep-Alive: timeout=20\r\nExpires: 
>>Thu, 05 
>> Jan 2006 22:30:19 GMT\r\nCache-Control: 
>>max-age=7776000\r\nAccept-Ranges: 
>> bytes\r\n\r]
>> ------8<---------------------------------------------
>> I.e.
>> Pragma: no-cache
>> Last-Modified: Tue, 30 Dec 2003 14:21:08
>> Expires: Thu, 05 Jan 2006 22:30:19 GMT
> 
> And what do you want Squid to do in this case?
> 
> What the client asked was:
>   Please give me this URL (GET ...), and it must be a fresh copy not
>   some possibly stale cached copy (Pragma: no-cache). I do not have
>   a local copy of the object  in my cache so please give me the 
>object
>   even if it hasn't changed in ages (no If-Modified-Since or 
>If-None-Match
>   header).
> 
> With this you only have three options from what I can tell:
> 
> a) Follow specifications and forward the request as a cache miss.
> 
> b) reload-into-ims, converting the "Pragma: no-cache" into an 
>if-modified-since request if a cached copy is found, verifying that 
>our cached copy is up to date but still honoring the "Pragma: 
>no-cache" in that the response must be fresh.
> 
> c) ignore-reload, always giving whatever is found fresh in the cache 
>as if it was a normal request without "Pragma: no-cache".
> 
> 
> Both alternative 'b' and 'c' violates the specifications. 'b' less 
>so than 'c' as it at least still preserves the most fundamental 
>spirit of "no-cache" always giving a fresh copy, but the 
>specifications does not allow the cached copy to be used at all on 
>"no-cache" requests.
> 
> 
So, what about   d) that is less that c)  ?
d)  ignore-reload,  if a cached copy is found,  verifying that  our 
cached copy is up to date but and ignoring "Pragma:  no-cache"   in 
tis case only .
My Examples   are from   Rambler and Yandex that is like Yahoo   and 
  Google,  so what about all  other websites ?  By the way,  the 
 sample from Rambler was from rambler - mail, that runs on CommuniGate
This seems to be a common thing   -  to set   Pragma: no-cache    to 
static objects like images
> RFC 2616 14.9.4 Cache Revalidation and Reload Controls
> 
>    End-to-end reload
>       The request includes a "no-cache" cache-control directive or, 
>for
>       compatibility with HTTP/1.0 clients, "Pragma: no-cache". 
>[deleted
>       for clarity]. The server MUST NOT use a cached copy when 
>responding to
>       such a request.
And what  RFC   sais about   specially/erroneosly/ maliciously 
 "Pragma: no-cache"  ?
SY,
EK
SY,
Evgeny Kotsuba
Received on Mon Oct 17 2005 - 03:08:16 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Nov 01 2005 - 12:00:07 MST