[squid-users] Squid 3.1 + Accel conf + ETag = ignoring ETag

From: Daniele Segato <daniele.segato_at_gmail.com>
Date: Fri, 27 Apr 2012 19:50:20 +0200

Hi,

I'm experimenting with squid and a service I'm writing.

my service compute ETag and return it along with other Http headers:

Headers returned by a request to my service:

HTTP/1.1 200 OK
Content-Language: it
Cache-Control: public, max-age=60, s-maxage=60
ETag: "32b71ecde17592a1d6ef696f5ae78216"
Last-Modified: Fri, 27 Apr 2012 14:09:08 GMT
Date: Fri, 27 Apr 2012 17:43:52 GMT
Vary: Accept, Accept-Language
Age: 0
Content-Type: application/json;charset=UTF-8
Content-Length: 932
Server: Jetty(6.1.21)

here's what's happen if I pass
If-Modified-Since: Fri, 27 Apr 2012 14:09:08 GMT

HTTP/1.1 304 Not Modified
Content-Language: it
Cache-Control: public, max-age=60, s-maxage=60
ETag: "32b71ecde17592a1d6ef696f5ae78216"
Last-Modified: Fri, 27 Apr 2012 14:09:08 GMT
Date: Fri, 27 Apr 2012 17:44:49 GMT
Vary: Accept, Accept-Language
Age: 0
Content-Type: application/json;charset=UTF-8
Content-Length: 932
Server: Jetty(6.1.21)

And if pass:
If-None-Match: "32b71ecde17592a1d6ef696f5ae78216"

HTTP/1.1 304 Not Modified
Content-Language: it
Cache-Control: public, max-age=60, s-maxage=60
ETag: "32b71ecde17592a1d6ef696f5ae78216"
Last-Modified: Fri, 27 Apr 2012 14:09:08 GMT
Date: Fri, 27 Apr 2012 17:46:20 GMT
Vary: Accept, Accept-Language
Age: 0
Content-Type: application/json;charset=UTF-8
Content-Length: 932
Server: Jetty(6.1.21)

Nothing special...
But squid is not sending me the "If-None-Match" header

I have situation where the Last-Modified date doesn't change, the ETag
work in identifying what's a 304 and what's not.
The last modified date check fails there (give 304 when the content has
been actually modified).

So I need squid to give me If-None-Match

is there some config to enable?
Am I doing something wrong?

thanks,
Daniele
Received on Fri Apr 27 2012 - 17:45:45 MDT

This archive was generated by hypermail 2.2.0 : Sat Apr 28 2012 - 12:00:03 MDT