一般的に、ページ ファイルの gzip 圧縮を有効にすると、テキスト サイトの場合、そのサイズを 60% ~ 90% 削減でき、帯域幅とユーザーの待ち時間を大幅に節約できます。ただし、IIS と Apache は両方とも、デフォルトでは HTML 静的ファイルのみを圧縮します。PHP ファイルをサポートするにはモジュール構成が必要です (動的 + 静的圧縮は iis7.5 で有効にすることもできます)。したがって、gzip を実現するために PHP 独自の関数を使用する効果が得られます。合理的な要求です。
インターネット上のチュートリアルは、基本的にあなたがコピーし、私が彼をコピーするというもので、書き方は 2 つだけです。先頭と末尾を追加するか、自己構築関数を追加するかです。実際、すべての PHP ページにコードを追加する必要があります。もちろん、参照を含めることもできますが、それは常に少し面倒に思えます。
実際、最も簡単な方法は、php ディレクトリで php.ini ファイルを開き、zlib.output_compression = Off を見つけて、それを zlib.output_compression = On に変更します。 .output_compression_level」を選択し、次に - 1 を 1 ~ 5 の値に変更します。このようにして、すべての PHP ページの gzip 効果を実現でき、Web サイトの PHP ファイルを個別に変更する必要がなくなります。サイトが多数ある場合は、時間を大幅に節約できます。
以下の点について説明する必要があります
1. ;zlib.output_handler は、前の設定と競合するため、コメントアウトしたままにする必要があります?? 公式の声明によると。
2. 通常、キャッシュは 4k (output_buffering = 4096) です。
3. zlib.output_compression_level の推奨パラメータ値は 1 ~ 5 です。6 では、実際の圧縮効果はあまり向上しませんが、CPU 使用率は幾何級数的に増加します。
図 1. firebug でリクエストヘッダーとレスポンスヘッダーを確認すると、実際に gzip 効果が表示されています