現在の位置: ホーム> 最新記事一覧> ZLIB拡張機能を使用してGZIP圧縮出力を実装してWebページのパフォーマンスを向上させる方法

ZLIB拡張機能を使用してGZIP圧縮出力を実装してWebページのパフォーマンスを向上させる方法

gitbox 2025-06-30

GZIP圧縮出力とは何ですか

GZIPは、データの転送サイズを大幅に削減できる広く使用されているファイル圧縮アルゴリズムです。サーバーがGZIP圧縮テクノロジーを有効にすると、サーバーはGZIP形式で返されたコンテンツを圧縮し、ブラウザに送信します。ブラウザが圧縮データを受信すると、自動的に解凍されて表示されます。

ネットワーク伝送では、GZIP圧縮を使用すると、データ送信の量を効果的に削減し、Webページの読み込み速度を大幅に改善し、帯域幅を節約し、ユーザーエクスペリエンスを改善できます。

PHPは、GZIP圧縮出力にZLIB拡張を使用します

PHPでは、GZIP圧縮出力にZlib拡張機能を使用できます。 ZLIB拡張は、PHPに組み込みの機能モジュールであり、GZIP形式の圧縮と減圧を実現できます。

ZLIB拡張機能を有効にします

まず、PHPの構成ファイル(PHP.INI)でZLIB拡張機能を有効にする必要があります。 php.iniファイルを開き、次の行を見つけます。

; extension = php_zlib.dll

この行の前でセミコロンを削除し、ファイルを保存してPHPサービスを再起動します。

OB_GZHANDLER関数を使用したGZIP圧縮出力

PHPでは、GZIP圧縮出力は、OB_GZHandler関数を使用して開始できます。この関数は、出力バッファーの内容をGZIP形式に圧縮し、クライアントに送信します。

ob_gzhandler関数を使用してGZIP圧縮出力を開始するコード例を次に示します。

ob_start( 'ob_gzhandler');

ob_start()関数を呼び出す場合、gzip圧縮を有効にするために「ob_gzhandler」パラメーターを渡します。後続のすべての出力は、GZIP形式で圧縮されます。

完全なサンプルコード

ZLIB拡張を使用してGZIP圧縮出力を実装する方法を示す完全な例を次に示します。

<?php
ob_start('ob_gzhandler'); // 開けるGZIP圧縮出力
header('Content-Encoding: gzip'); // 応答ヘッダーを設定します,ブラウザにコンテンツを使用するように通知しますGZIP圧縮
// 输出需要圧縮的内容
echo "これは実行する必要がありますGZIP圧縮出力的内容。";
ob_end_flush(); // バッファコンテンツを出力し、バッファを閉じます
?>

上記のコードは、最初にob_start( 'ob_gzhandler')を介してGZIP圧縮出力を開始します。次に、Header()関数を使用して応答ヘッダーを設定して、返されたコンテンツがGZIP圧縮形式であることをブラウザに通知します。最後に、バッファの内容はob_end_flush()を介して出力され、バッファーは終了します。

要約します

PHPのZLIB拡張機能により、GZIP圧縮出力を簡単に実装できるため、データ送信のサイズが縮小され、Webページの読み込み速度が向上します。実際のアプリケーションでは、ウェブサイトの全体的なパフォーマンスとユーザーエクスペリエンスを改善するために、ニーズに応じてGZIP圧縮を有効にするかどうかを選択できます。