The action_cache plugin broke our content-negotiation. Fixed.
The action_cache plugin had Conditional GET (If-Modified-Since) support. I added ETag (If-None-Match) support.
Added the action_cache plugin http://agilewebdevelopment.com/plugins/action_cache which does action-caching with ETags support. The built-in Rails ETags "solution" sucks, because it forces a page-rerender, even when the content is unchanged.