Cache hit although no-cache

RESOLVED INCOMPLETE

Status

()

Core
Networking: Cache
RESOLVED INCOMPLETE
5 years ago
2 years ago

People

(Reporter: Julien Palard, Unassigned, NeedInfo)

Tracking

18 Branch
x86_64
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [necko-backlog])

(Reporter)

Description

5 years ago
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:18.0) Gecko/20100101 Firefox/18.0
Build ID: 20130201065344

Steps to reproduce:

My server is replying with HTTP/1.1, but I'm behind a SQUID that downgrade it to HTTP/1.0, so I added the HTTP/1.0 "Pragma: no-cache" just in case firefox ignores Cache-Control in HTTP/1.0 responses, Here is the header received according to about:cache

HTTP/1.0 200 OK
Date: Thu, 14 Feb 2013 13:16:40 GMT
Server: Teddyd
X-Broadcast: True
Cache-Control: no-cache, no-store
Pragma: no-cache
Expires: Mon, 26 Jul 1997 05:00:00 GMT
X-Id-69: 0
X-Id-46: -1
X-Cache: MISS from localhost
X-Cache-Lookup: MISS from localhost:3128
Via: 1.0 localhost (squid/3.1.6)


Actual results:

Firefox cached the response, and used the cached response a lot ( 1205 times ) confirmed reading Firebug console (watching requests being made) and confirmed by strace and tcpdump (Not seeing requests being wrote on network)

Firefox cached the response on disk before adding a no-store, and on memory after adding no-store, so Cache-Control are parsed by firefox in an HTTP/1.0, why not, it's cool for me as I'm replying in HTTP/1.1 and that's a proxy that downgraded the response to HTTP/1.0.

Here is what about:cache states about the item (Replaced  URL with example.com) :

Cache entry information
key:    http://example.com/?69=1&46=0
fetch count:    1205
last fetched:   2013-02-14 14:23:59
last modified:  2013-02-14 14:16:40
expires:        1970-01-01 01:00:00
Data size:      2542
file on disk:   none
Security:       This document does not have any security info associated with it.



Expected results:

Do not cache a response that explicitly ask for "no-cache" and explicitly mark the response as expired since some years.

Updated

5 years ago
Component: Untriaged → Networking: Cache
Product: Firefox → Core
we have tests about this that are passing, so an HTTP log would be needed to make progress. I realized the ship may have sailed..

https://developer.mozilla.org/en-US/docs/Mozilla/Debugging/HTTP_logging
Flags: needinfo?(mozilla)
Whiteboard: necko-backlog]
Whiteboard: necko-backlog] → [necko-backlog]
Status: UNCONFIRMED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.