提供gzip压缩文件时要使用什么'Content-Type'标头?

Cli*_*ote 49 javascript gzip http http-headers

我正在提供我的css/javascript文件的gzipped副本.根据教程,我将内容类型设置为application/gzip提供这些文件时的类型.但是,chrome似乎并没有解压缩这些文件,而对于javascript文件,我得到了很多"非法字符"错误.如果我查看源代码,我仍然会将文件视为压缩文件,而不是未压缩文件.

我的问题是,我应该将这些文件的内容类型设置为什么,以便浏览器将它们正确地解释为gzip压缩的css/js文件,并取消gzip它们?如果我只是设置text/javascripttext/css,浏览器仍然会正确解释它们吗?

编辑:完整响应标头:

HTTP/1.1 200 OK
x-amz-id-2: UIBkZT/MuFxsmn+3nVOzEO63rRY99l3traCbMExUgSdGHUrOIPtNp34h1+ujYKmt
x-amz-request-id: 19346C9B01D8FC62
Date: Mon, 12 May 2014 03:59:51 GMT
Content-Encoding: gzip
Last-Modified: Mon, 12 May 2014 02:24:54 GMT
ETag: "561080b5e19f6daea2e74fd5a0623c79"
Accept-Ranges: bytes
Content-Type: application/x-gzip
Content-Length: 5153
Server: AmazonS3
Run Code Online (Sandbox Code Playgroud)

Joe*_*son 85

响应中的压缩内容显示在Content-Encoding.本Content-Type应保持不变,也就是说,它应该反映被压缩底层媒体类型.

Content-Type: application/javascript
Content-Encoding: gzip
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅RFC 2616的14.11内容编码3.5内容编码.

  • 好的,我看到了预期的Content-Encoding,但Content-Type应该反映压缩的底层媒体类型.尝试将`application/x-gzip`改回`application/javascript`. (2认同)
  • 我还看到 AmazonS3 是服务器。也许http://stackoverflow.com/questions/5442011/serving-gzipped-css-and-javascript-from-amazon-cloudfront-via-s3也相关。 (2认同)