If the conditional GET used a strong cache validator (see section
13.3.3), the response SHOULD NOT include other entity-headers.
Otherwise (i.e., the conditional GET used a weak validator), the
response MUST NOT include other entity-headers; this prevents
inconsistencies between cached entity-bodies and updated headers.
Content-Type is entity header and not listed above this paragraph,
so clearly qualifies as “other entity-headers”.
Could you please clarify why you think RFC is wrong here and you
need Content-Type in 304 response?
I’d offer to try disabling Last Modified header from your nginx and give
reasonable high (30 days?) value in Expires header.
Meanwhile you may report this error to whoever is assuming that absence
of Content-Type is reason for not processing your css (facebook or
facebook app developers, I’m not sure who you’re talking about but IMHO
they all will at least comment on RFC position about this).
If you’ll look at different servers sending 304 than you’ll see that
google for example does not send Content Type. As well as apache.org
It’s perfectly valid and accepted practice.
Alex.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.