[PR] 記事内に広告が含まれています

ホームページのキャッシュ保存時間を指定する

Webサイト制作

HTML/CSS/JavaScriptについて

覚書のメモなので、雑に書きます。

検索結果からの情報を並べただけなので、下記の方法で上手く行っているようですが話半分で見てください。

 

数年前、ホームページ制作で、サイトを更新しお客さんに確認してもらうと

「変わってないんだけど・・・」と、言われることがあります。

で、今までは「更新ボタン(かF5キー)を押してください」って言っていたのだが、いつの間にかそれでは、更新内容が変わらなくなって、前の内容のまま。

いつからか、強制更新(スーパーリロード)という方法でないと、新しい内容が表示されないらしい。で、強制更新の方法は、

Windowsのchrome、Firefox、Edge、IE11では「Ctrl + F5」。

MacのSafariだと「Shift + 更新ボタン」で出来る。

ただ、これだと毎回面倒なので、サーバー側でキャッシュの有効時間を指定する。

 

以前はHTMLでキャッシュ保持時間を指定できたが・・・

以前は、HTMLで残存時間の指定が出来た。

<meta http-equiv=”Expires” content=”3600″>

headタグ内にこんな感じで書き込めばよかったが、HTML5では無効化?になったようです。

そこで、.htaccessを使って、キャッシュ保持時間を指定します。

 

htaccessを使って、キャッシュ保持時間

<IfModule mod_expires.c>
ExpiresActive On

ExpiresByType image/jpeg “access plus 30 minutes”
ExpiresByType image/png “access plus 30 minutes”
ExpiresByType text/thml” access plus 30  months”
ExpiresByType text/css “access plus 30 months”
ExpiresByType text/javascript “access plus 30 months”
</IfModule>

30分間だけキャッシュを保存する設定。まぁぶっ続けで、同じサイトをくるくる回って、30分以上も見ないでしょってことと、、、

webサイトの更新依頼があっても、更新作業して確認して貰うまでは、急ぎでなければ1時間以上時間が空くと思うので、30分が妥当かなと思ったわけです。

時間指定方法はApacheの解説サイトへ。

 

参考サイト

http://www.surf.nuqe.nagoya-u.ac.jp/manual/ja/mod/mod_expires.html
.htaccess(ブラウザキャッシュ高速化・無効化)制御による表示速度UP
更新頻度が低く量量が大きいファイルはhtaccessにブラウザキャッシュを設定して高速化しましょう。逆に更新頻度が高いファイルはユーザ…
ExpiresByType が JavaScript に対して効かない? | Web Design Leaves