How come some objects do not get cached?
To determine whether a given object may be cached, Squid takes many things into consideration. The current algorithm (for Squid-2) goes something like this: • Responses with Cache-Control: Private are NOT cachable. • Responses with Cache-Control: No-Cache are NOT cachable. • Responses with Cache-Control: No-Store are NOT cachable. • Responses for requests with an Authorization header are cachable ONLY if the reponse includes Cache-Control: Public. • Responses with Vary headers are NOT cachable because Squid does not yet support Vary features. • The following HTTP status codes are cachable: • 200 OK • 203 Non-Authoritative Information • 300 Multiple Choices • 301 Moved Permanently • 410 Gone However, if Squid receives one of these responses from a neighbor cache, it will NOT be cached if ALL of the Date, Last-Modified, and Expires reply headers are missing. This prevents such objects from bouncing back-and-forth between siblings forever. A 302 Moved Temporarily response is cachable ONLY
To determine whether a given object may be cached, Squid takes many things into consideration. The current algorithm (for Squid-2) goes something like this: • Responses with Cache-Control: Private are NOT cachable. • Responses with Cache-Control: No-Cache are NOT cachable. • Responses with Cache-Control: No-Store are NOT cachable. • Responses for requests with an Authorization header are cachable ONLY if the reponse includes Cache-Control: Public. • Responses with Vary headers are NOT cachable because Squid does not yet support Vary features. • The following HTTP status codes are cachable: • 200 OK • 203 Non-Authoritative Information • 300 Multiple Choices • 301 Moved Permanently • 410 Gone However, if Squid receives one of these responses from a neighbor cache, it will NOT be cached if ALL of the Date, Last-Modified, and Expires reply headers are missing. This prevents such objects from bouncing back-and-forth between siblings forever. • A 302 Moved Temporarily response is cachable ON