XREA サーバでキャッシュを効かせないようにする .htaccess 設定

XREA でサイトを運営していると、時々 CSS ファイルの更新が反映されなかったり、古い HTML が返されたりすることがあって困っていた。

Apache サーバで動いていて .htaccess による制御が効く XREA では、次のように書いてやると、キャッシュを効かせないように設定できる。

# No Cache
<IfModule mod_headers.c>
  <FilesMatch "¥.(html|css|xml)$">
    Header set Pragma "no-cache"
    Header set Cache-Control "no-cache, no-store, must-revalidate"
    Header set Expires 0
  </FilesMatch>
</IfModule>

.htaccess について検索すると、IfModule とか FileMatch とかの指定が If だけでよかったり Files で指定していたりする例があるのだが、XREA s21 サーバでは上の書き方で制御できた。

ブラウザの開発者ツールで見てみると、リクエストヘッダに Pragma などが設定されているのが確認できるはずだ。