動的に生成された (PHP) コンテンツと静的コンテンツの両方を持つ Web サイトがあります。コンテンツ ネゴシエーションに従ってすべてを透過的に圧縮するように Apache を設定するのは簡単なことです。
ただし、私は、めったに変更されない静的コンテンツを圧縮するのではなく、事前に圧縮されたデータを「asis」の方法で提供することに関心があります。
この背後にある考え方は、待ち時間を短縮して CPU パワーを節約し、同時に圧縮を改善することです。sendfile
基本的に、同じデータを何度も圧縮するのではなく、サーバーにコンテンツに触れずに適切なヘッダーを付けてもらいたいです。そして、理想的には.html
、.html.gz
ファイルとシームレスに動作し、ある場合には透過圧縮を使用し、別の場合には何も使用しない.
mod_asis がありますが、これは適切なヘッダー (最も重要なのはキャッシュとプロキシ操作に影響するもの) を提供せず、コンテンツ ネゴシエーションに依存しません。content-encoding
for を追加する.gz
ことは正しいことのようですが、何もしません。'.html.gz` Web ページがダウンロードとして表示されます (おそらく、これはデフォルトの typemap に干渉しますか?)。
ガトリング Web サーバーは、この点で私が望んでいることを実行しているように見えますが、Apache のせいにすることはできますが、何年も問題なく動作しているメインストリーム サーバーの 1 つであるため、Apache にとどまることを本当に望んでいます。
別の回避策は、別のポートまたはサブドメインの別のサーバーで静的コンテンツを提供することですが、それが「目に見えない」だけで機能し、システムが必要以上に複雑にならないようにすることをお勧めします。
示されている方法で Apache を動作させる、よく知られた構成イディオムはありますか?