Web Server は HTTP コンテンツ圧縮をサポートします。 コンテンツを圧縮することで、ハードウェアに負担をかけることなくクライアントへの配信速度を向上させ、コンテンツのボリュームを増やすことができます。コンテンツ圧縮により、コンテンツのダウンロード時間が減少します。これは、ダイアルアップ接続やトラフィックの多い接続を使用するユーザーにとって非常に重要な利点です。
コンテンツを圧縮した場合、Web Server は圧縮されたデータを送信し、そのデータを直ちに展開 (解凍) するようにブラウザに指示を出します。このため、送信するデータの容量が減り、ページの表示速度が速くなります。
ある指定されたディレクトリで、事前に圧縮されたバージョンのファイルを生成して格納するようにサーバーを構成できます。そのように構成され、かつ Accept-encoding: gzip ヘッダーが受信された場合にのみ、事前に圧縮されたコンテンツを提供するように構成されたディレクトリ内のファイルへのすべての要求が、そのディレクトリ内のそれと同等な圧縮済みファイルへの要求にリダイレクトされます。ただしそれには、そのようなファイルが存在している必要があります。たとえば、Web サーバーが myfile.html の要求を受信し、かつ myfile.html と myfile.html.gz がどちらも存在していた場合、それらの要求に適切な Accept-encoding ヘッダーが含まれていれば、圧縮されたファイルが送信されます。
事前に圧縮されたコンテンツを提供するようにサーバーを構成するには、次の手順を実行します。
仮想サーバーのページから「コンテンツ管理」タブをクリックします。
「一般」サブタブをクリックします。
「圧縮」>「事前に圧縮されたコンテンツ」セクションに移動し、次のオプションから選択します。
事前に圧縮されたコンテンツ — 有効化/無効化。選択されたリソースに対して事前に圧縮されたコンテンツを提供するように、サーバーに指示できるようにします。
経過時間チェック — 圧縮版が非圧縮版より古いかどうかをチェックするかどうかを指定します。
これを選択すると、圧縮版が非圧縮版より古い場合に圧縮版がチェックされません。
Vary ヘッダーを挿入 — Vary: Accept-encoding ヘッダーを使用するかどうかを指定します。
これを選択すると、圧縮版のファイルが選択されたときに Vary: Accept-encoding ヘッダーが常に挿入されます。
これを選択しないと、Vary: Accept-encoding ヘッダーは挿入されません。
「保存 」をクリックします。
転送データを動的に圧縮するように Server を構成することもできます。動的に生成される HTML ページは、ユーザーがそれを要求するまで生成されません。これは特に、電子商取引ベースの Web アプリケーションやデータベース駆動型のサイトで役立ちます。
オンデマンドでコンテンツを圧縮するようにサーバーを構成するには、次の手順を実行します。
仮想サーバーのページから「コンテンツ処理」タブをクリックします。
「一般」サブタブをクリックします。「圧縮」セクションの「オンデマンドのコンテンツ圧縮」セクションに移動します。
次のオプションがあります。
オンデマンド圧縮 — 選択されたリソースのオンデマンド圧縮を有効化/無効化します。
Vary ヘッダーを挿入 — Vary: Accept-encoding ヘッダーを挿入するかどうかを指定します。
これを選択すると、圧縮版のファイルが選択されたときに Vary: Accept-encoding ヘッダーが常に挿入されます。
これを選択しないと、Vary: Accept-encoding ヘッダーは挿入されません。
フラグメントサイズ — 圧縮ライブラリ (zlib) が一度に圧縮する分量を制御するために使用する、メモリーのフラグメントサイズをバイトで指定します。デフォルト値は 8096 です。
圧縮レベル — 圧縮のレベルを指定します。1-9 の値を選択します。値 1 では速度が最高になり、値 9 では圧縮率が最高になります。デフォルト値は、速度と圧縮率の両方を考慮した 6 です。
「保存 」をクリックします。
CLI の使用
CLI 経由でオンデマンド圧縮を有効にするには、次のコマンドを実行します。
wadm> enable-on-demand-compression --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --vs=config1_vs_1 --insertvaryheader=true --fragment-size=100 --compression-level=5 |
CLI リファレンスの enable-on-demand-compression(1) を参照してください。