ajax通信でファイルがgzip圧縮されていなかった時の対策[nginx]

ajaxでファイル通信を行っていたが、ファイルがgzip圧縮されていなかった。
まず確認はchromeのデベロッパーツールまたはcurlで行うことができる。

こちらのサイトを参考にさせていただいた。
chromeデベロッパーツールは書いてる通り。
curlは

curl -I -H 'Accept-Encoding: gzip,deflate'  https://hoge.com/test.list

等とした。gzip圧縮されていないことを確認。
このファイルは1MB以上あったので、通信量を減らすためにもgzip圧縮したい。
通常のファイルはnginxでgzip圧縮されるようにしていたが、こちらのファイルの通信では
Content-Typeがapplication/octet-streamなっており、これをnginxのconfigファイルに追加することで解決できた。

    gzip                    on;
    gzip_static             on;
    gzip_min_length         1024;
    gzip_buffers            4 8k;
    gzip_http_version       1.0;
    gzip_comp_level         2;
    gzip_proxied            any;
    gzip_types              text/plain text/css application/javascript
                            text/xml application/atom+xml application/xml+rss
                            application/json text/json text/javascript+json application/octet-stream;
    gzip_disable            "MSIE [1-6].";
    gzip_disable            "Mozilla/4";

シェアする

  • このエントリーをはてなブックマークに追加

フォローする