I learned the hard way today that Rails automatically adds ETag headers. It took a while to isolate this given that I had a cache and a proxy in front of my Rails server. Here is an old changeset that introduced this behavior: http://dev.rubyonrails.org/changeset/6158.
Automatic ETag by Rails
Previous post: On Partial Representations
Next post: On Clean URIs – Again