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