h2o は compress: ON にすると、レスポンスに accept-encoding に応じたオンザフライな圧縮が有効になります。ただしデフォルト状態ではcontent-type が text/ から始まる場合と +xml で終わる場合に限られているようです

この条件に一致しない application/json などに対しても圧縮をかけたい場合、file.mime.settypes で設定すれば良いようです。すなわち

    file.mime.settypes:
      "application/json":
        extensions: [".json"]
        is_compressible: yes 
        priority: normal

このようにすれば application/json でも自動的に圧縮してくれます。

これは file. で始まるディレクティブですが、バックエンドサーバから送るレスポンスに対しても(リバースプロキシとしても)これで圧縮がかかるようになります。

  1. トップ
  2. tech
  3. h2o で特定のファイルがオンザフライ圧縮されないとき
▲ この日のエントリ