php.ini の設定により動作が変化します。
zlib 拡張モジュールは、 ブラウザがサポートする場合にページを透過的に圧縮するオプションを提供します。 ここで、 設定ファイル php.ini のオプションには、以下の 3 種類があります。
名前 | デフォルト | 変更可能 | 変更履歴 |
---|---|---|---|
zlib.output_compression | "0" | PHP_INI_ALL | PHP 4.0.5 から利用可能 |
zlib.output_compression_level | "-1" | PHP_INI_ALL | PHP 4.3.0 から利用可能 |
zlib.output_handler | "" | PHP_INI_ALL | PHP 4.3.0 から利用可能 |
以下に設定ディレクティブに関する 簡単な説明を示します。
zlib.output_compression
boolean/integer
透過的なページ圧縮を行うかどうか。php.ini または Apache の設定でこのオプションが、"On" に設定された場合、 ブラウザが "Accept-Encoding: gzip" または "deflate" ヘッダを送信する場合に、ページは圧縮されます。 "Content-Encoding: gzip" (および "deflate") と "Vary: Accept-Encoding" ヘッダが出力に追加されます。 実行時、何らかのデータを送出する前にのみ設定することが可能です。
このオプションも論理値 "On"/"Off" のかわりに整数値をとることができ、 これを用いて出力のバッファサイズ (デフォルトは 4KB) を設定することができます。
注意:
このオプションに 'On' を設定した場合、 output_handler を空にする必要があります! かわりに zlib.output_handler を使用する必要があります。
zlib.output_compression_level
integer
透過的出力圧縮で使用される圧縮レベル。0 (圧縮しない) から 9 (最高レベルの圧縮をする) までの値を指定します。デフォルト値の -1 は、どのレベルを使用するかをサーバーで決定させます。
zlib.output_handler
string
zlib.output_compression が有効な場合、 他の出力ハンドラを指定することはできません。 この設定は、output_handler と同じですが、順番が異なります。