【问题标题】:nginx which content types to enable compression fornginx 为哪些内容类型启用压缩
【发布时间】:2016-09-13 01:34:03
【问题描述】:

在几个解释“如何设置 gzip 压缩”的 nginx 教程网站中,我看到重复的 MIME 类型列表:

gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

但是,我立即发现此列表并未导致在 Chromium 中为 JavaScript 启用压缩。我不得不将application/javascript 添加到列表中。这让我相信这个列表已经过时了。

是否有我想要 gzip 的所有内容类型的明确列表?

【问题讨论】:

    标签: nginx compression gzip mime-types content-type


    【解决方案1】:

    想要 gzip 的文件类型没有明确的列表。任何可以作为纯文本读取的文件类型(即非二进制文件)都可以被 gzip 压缩,因此“最终”列表将是巨大的。因此,它最终取决于您实际提供的文件类型,您可以通过 HTTP Content-Type 标头检查任何给定文件。

    如果您想更加确定自己涵盖了特定扩展的所有可能 MIME 类型(我认为这是合理的),请查看 this SO postthis text file 包含一个非常详尽的列表。

    请务必注意,某些二进制文件类型,如 .png.pdf(甚至是 .woff)将压缩合并到格式本身中,因此不应压缩(因为这样做可能会生成大于原本的)。我的经验法则是:如果我的代码编辑器无法将文件读取为 UTF-8 文本,则对文件进行 gzip 压缩是不明智的(或者至少效率不高)。

    FWIW,我通常在我的网站上压缩以下格式(在我的 Apache .htaccess 中):

    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/xml text/css text/javascript application/javascript application/x-javascript application/json application/xml image/svg+xml
    </IfModule>
    

    【讨论】:

      猜你喜欢
      • 2018-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-09
      相关资源
      最近更新 更多