According to HTTP/1.1 specification, the precedence is not determined by the keyword, but by the value: The shorter age is to be taken. Regards Markus > -----Original Message----- > From: Chris Woodfield [mailto:rekoil@xxxxxxxxxxxxx] > Sent: Freitag, 26. September 2008 23:46 > To: Squid Users > Subject: Expires: vs. Cache-Control: max-age > > Hi, > > Can someone confirm whether Expires: or Cache-control: max-age > parameters take precedence when both are present in an object's > headers? My assumption would be Cache-control: max-age would be > preferred, but we're seeing some behavior that suggests otherwise. > > Specifically, we're seeing Expires: headers in the past resulting in > refresh checks against our origin even when a Cache-Control: max-age > header is present and the cached object should be fresh per that > metric. > > What we're seeing is somewhat similar to bug 2430, but I want to make > sure what we're seeing isn't expected behavior. > > Thanks, > > -Chris