このリンクの下 Apache2サーバーでCache-Control
ヘッダーを設定する方法の例がいくつかあります。したがって、一般的に、これらのヘッダーを設定するには3つの異なるアプローチがあります。
mod_expires
+ mod_headers
の両方を使用するmod_headers
のみを使用mod_expires
のみを使用それらの間に大きな違いはありますか?どちらが好ましいのか、そしてその理由、あるいはそれはまったく問題ではないのでしょうか? Apache2でCache-Control
ヘッダーを設定する最良の方法は何ですか?
主な違いは、Expires
ヘッダーがWebアプリケーションまたはスクリプトによってすでに設定されていて、実際に使用できない場合、 mod_expires はCache-Control
ヘッダーを置き換え/更新しないことです。 max-age
キャッシュ制御ヘッダー以外のものを設定します。
一方、 mod_headers の Header
ディレクティブは、思いやりがないように構成でき、既存のヘッダーを新しいヘッダーにマージまたは完全に置き換えることもできます。指定します。これにより、Webアプリケーションまたはスクリプトが設定したCache-Control
ヘッダー(デフォルトで構成不可)をオーバーライドしたり、他のヘッダーを設定したりできます。
私の知る限り、mod_headersは、mod_expiresが将来の日付を計算するために行う計算を行うためのインターフェイスを提供していません。つまり、Expiresヘッダーをnow + 1 month
のタイムスタンプに設定するために、Headerディレクティブを使用することはできません。
したがって、モジュールは補完的です。