web-dev-qa-db-ja.com

.htaccessを使用したHTTPキャッシュヘッダー

キャッシュ時間を設定するために.htaccessファイルを構成しようとしています。すべての可能な構成を試してみましたが、何も機能しません!

これは私のHTMLで書かれているものです:

 <meta http-equiv="Cache-Control" content="max-age=2592000, public" />
 <!--        
 <meta http-equiv="expires" content="mon, 24 sep 2012 14:30:00 GMT">
  -->

これは私の.htaccessファイルに書かれています:

ExpiresActive On
ExpiresDefault A3600

ただし、Firefoxでinclusindキャッシュクリア(Ctrl + F5)を更新すると、Firebug NETパネルに、ファイルにアクセスしたのと同じ秒にキャッシュが期限切れになると表示されます(将来はそうではありません)。

何が悪いのですか?

ありがとう

10
Yura

ヘッダーmodを使用することをお勧めします。次のコマンドで有効にできます(無効の場合)。

a2enmodヘッダー

機能する簡単なコード例を次に示します。

<IfModule mod_headers.c>
    # WEEK
    <FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
        Header set Cache-Control "max-age=604800, public"
    </FilesMatch>

    # WEEK
    <FilesMatch "\.(js|css|swf)$">
        Header set Cache-Control "max-age=604800"
    </FilesMatch>
</IfModule>

max-ageはキャッシュされた時間(秒単位)です。

34
Maraumax