59

nginx サーバーで gzip 圧縮を有効にする必要があります。firfox firebug NET ツールから観察したように、html ファイルが gzip 圧縮されていることがわかりました。ただし、javascript ファイルと CSS ファイルではありません。

Mime.typesと nginx 構成ファイル/etc/nginx/ngnix.confを既に確認しましたが、問題は見つかりませんでした。css と javascript の Gzip 圧縮をまだ確認できません。私のNGINX.confエントリは以下の通りです

gzip on;
gzip_disable "msie6";

gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
4

5 に答える 5

164

これは、私が現在本番環境で使用している作業構成です。

http://pastie.org/10870547

gzip on;
gzip_disable "msie6";

gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_proxied any;
gzip_types
    text/plain
    text/css
    text/js
    text/xml
    text/javascript
    application/javascript
    application/json
    application/xml
    application/rss+xml
    image/svg+xml;

この構成は、tools.pingdom.com でテストされました。

于 2012-09-28T17:17:40.503 に答える
38

html5 ボイラープレートコードから構成例を見つけることができます。

  # Gzip を有効にする
  gzip オン;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_min_length 1100;
  gzip_buffers 4 8k;
  gzip_proxied any;
  gzip_types
    # text/html は常に HttpGzipModule によって圧縮されます
    テキスト/CSS
    テキスト/JavaScript
    テキスト/xml
    テキスト/プレーン
    テキスト/x-コンポーネント
    アプリケーション/JavaScript
    アプリケーション/json
    アプリケーション/xml
    アプリケーション/rss+xml
    フォント/TrueType
    フォント/opentype
    アプリケーション/vnd.ms-fontobject
    画像/svg+xml;

  gzip_static on;

  gzip_proxied 期限切れのキャッシュなしストアなしのプライベート認証。
  gzip_disable "MSIE [1-6]\.";
  gzip_vary on;

于 2015-05-04T19:57:01.807 に答える
7

一部のファイルが圧縮されていて一部が圧縮されていない場合、gzip は機能していますが、gzip_typesの定義を見逃している可能性があります。たとえば、javascript ファイルは、次のタイプのいずれかのヘッダーで返す場合があります。

  • アプリケーション/JavaScript
  • アプリケーション/x-javascript
  • テキスト/JavaScript

すべての JavaScript ファイルを圧縮するには、3 つの定義すべてを gzip_types に含める必要があります。

このような圧縮されていないファイルに対して返される content-type を応答ヘッダーで確認し、それが gzip_types でも​​定義されていることを確認する必要があります。

于 2014-07-08T20:48:41.143 に答える
1

SVG を圧縮するには、次の行が正しいです。

image/svg+xml svg svgz;
于 2015-05-23T09:50:11.853 に答える