WordPress .htaccessでCache-Controlヘッダーによるブラウザキャッシュの設定方法

WordPress 6.5.2
広告WordPress・PHP を学べる本

Amazonのアソシエイトとして、WordPress functions.phpは適格販売により収入を得ています。

概要説明

.htaccessを使ったブラウザキャッシュ設定。拡張子ごとに有効期限の設定が行えます。キャッシュ対象ファイルのリクエストパラメーターを変更することでキャッシュクリアが行えるのでパラメーターを管理画面から変更できるようにするカスタマイズもおすすめです。

キャッシュ時間を任意の時間で設定する

WordPress .htaccessでCache-Controlヘッダーによるブラウザキャッシュの設定方法

レンタルサーバーのブラウザキャッシュ機能では有効期限の期間設定が行えない場合があります。今回は.htaccessにて有効期限や各種拡張子ごとに設定を変更します

Google Developers サイト 効率的なキャッシュ ポリシーを使用して静的アセットを提供する

有効期限の時間指定の例

1日

86400秒

1週間

604800秒

1ヶ月(30日)

2592000秒

1年(365日)

31536000秒

画像は同一ファイル名で更新しない場合(差し替え時はファイル名を変更)

.htaccess
# 画像ファイルを1年間ブラウザにキャッシュさせる
<FilesMatch "\.(jpg|jpeg|gif|png|svg|svgz|webp|ico|bmp|woff|woff2|ttf|otf)$">
Header set Cache-Control "max-age=31536000"
</FilesMatch>

 

キャッシュさせたくない場合

.htaccess
<FilesMatch "\.(css|js)$">
Header set Cache-Control no-cache
Header set Pragma no-cache
</FilesMatch>

任意のタイミングでキャッシュを削除できるようにしておく

上記ページ内の修正でcss,javascriptファイルのパラメーターに日付を付けてキャッシュを簡単に更新できるようにしておくと便利です。

キャッシュクリアをパラメーターで設定できる環境の場合

.htaccess
# 画像ファイルを1年間ブラウザにキャッシュさせる
<FilesMatch "\.(jpg|jpeg|gif|png|svg|svgz|webp|ico|bmp|woff|woff2|ttf|otf)$">
Header set Cache-Control "max-age=31536000"
</FilesMatch>
# css,javascriptファイルを1週間ブラウザにキャッシュさせる
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>

SiteBeacon(サイトビーコン)

サイトが止まったら、すぐに気づける。

ホームページを 5 分ごとにチェックして、止まったとき・エラーが出たとき・SSL やドメインの期限が近いときに、メールでお知らせします。2 サイトまでは、ずっと無料で使えます。

SiteBeacon を見る サイトを直す相談をする

監視で気づいたあとの直す作業も、同じ担当がお受けします。