On Fri, 15 Dec 2006, Aleksandar Lazic wrote:
On Sam 16.12.2006 00:41, Igor Sysoev wrote:
On Fri, 15 Dec 2006, Aleksandar Lazic wrote:
on the irc ( http://irclog.turbogears.org/archive/freenode/nginx )
have been asked if it is possible to send a ETag-Header when the
request is a static file.
I have seen that you handle the ETag header in proxied request, how
difficult is it to add the calculation to the static files?!
It's easy to add, however, I do not see how ETag is better than
Last-Modified for static files.
A nice short description is here:
http://www.mnot.net/cache_docs/#WORK
It looks to me that it makes some caches out there to cache the response
from the origin server more reliable as in rfc2616
(ftp://ftp.rfc-editor.org/in-notes/rfc2616.txt) is written.
3.11 Entity Tags
13.3.2 Entity Tag Cache Validators
14.19 ETag
I'am not sure if it's good or bad also how helpfull it really is, maybe
someone on the list could help to understand this ;-)?!
I saw that browsers and cache proxies use Last-Modified as tag but not as
time value. If they want to revalidate response, they send If-Modified-Since
with the same value as they have received. MSIE adds ", length=XXXX" string.
nginx gets time in seconds from IMS header and does IMS == LM comparsion,
but not "IMS <= LM" comparsion to return 304.
Btw.: How is the entity value calculated?!
Now Apache use "FileETag INode MTime Size" directive. Before Apache 1.3.23
the ETag was always formed as "inode-size-mtime" and the same files
from mirror image servers have the different ETags.