I have just modified the HTTP header respond of IIS Servers squidclient -m HEAD http://invalid_URL HTTP/1.0 404 Not Found Cache-Control: public Content-Length: 1731 Content-Type: text/html Expires: 1000 Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET Date: Fri, 13 May 2011 04:30:09 GMT X-Cache: MISS It still gets MISS :( Kien Le. On Fri, May 13, 2011 at 11:13 AM, Amos Jeffries <squid3@xxxxxxxxxxxxx> wrote: > On 13/05/11 15:55, Le Trung Kien wrote: >> >> Hi, >> On the original servers, I'm using IIS6.0 and the 404b.html is the >> page returned when client requests non-existing pages. >> I attempt to add a header like this on that page: >> >> <HEAD><TITLE>The page cannot be found</TITLE> >> <META HTTP-EQUIV="Content-Type" Content="text/html; charset=Windows-1252"> >> <META HTTP-EQUIV="Cache-Control" Content="Private"> >> <META HTTP-EQUIV="Expires" Content="300"> >> </HEAD> >> >> This header is the same on all pages generated by our web applications >> and could be cached. >> However, I test and see that our squid still doesn't cache that 404b.html >> page >> >> squidclient -m HEAD http://invalid_URL >> >> HTTP/1.0 404 Not Found >> Content-Length: 1731 >> Content-Type: text/html >> Server: Microsoft-IIS/6.0 >> X-Powered-By: ASP.NET >> Date: Fri, 13 May 2011 03:41:10 GMT >> X-Cache: MISS >> >> squidclient -m HEAD http://existing_URL >> >> HTTP/1.0 200 OK >> Date: Fri, 13 May 2011 03:34:22 GMT >> Server: Microsoft-IIS/6.0 >> X-Powered-By: ASP.NET >> X-AspNet-Version: 2.0.50727 >> X-Powered-By: UrlRewriter.NET 2.0.0 >> Cache-Control: private >> Content-Type: text/html; charset=utf-8 >> Content-Length: 121485 >> Age: 424 >> X-Cache: HIT >> >> I realize that the header squidclient receives when requesting an >> invalid URL is less and our squid still MISS. >> >> Kien Le. >> > > > That is HTML. The page headers only affect the web browser graphical > display. > > You need to set them in the HTTP headers instead. So Expires: shows up in > your HEAD request. IIRC there is an XML site-wide config file somewhere (in > the site root directory?) where these are set. I'm a bit vague on the > details though, not being an IIS admin. > > Also, > Content-Type does not matter IIS is sending it anyway as you can see below. > "Cache-Control: private" will absolutely prevent Squid from caching the > reply. The exact opposite of what you are trying to do. If you have > private/confidential user details on that 404 they will have to be removed. > > Amos > -- > Please be using > Current Stable Squid 2.7.STABLE9 or 3.1.12 > Beta testers wanted for 3.2.0.7 and 3.1.12.1 >