Nginxでブラウザのキャッシュを活用する方法
※本ページはプロモーションが含まれています
Googleの「PageSpeed Insights」でブラウザのキャッシュを使用するようにアドバイスを貰ったので、Nginxでブラウザのキャッシュを使う方法を紹介します。
gzipを使う方法は「Nginxでgzipを設定する方法」で。
Nginxでブラウザのキャッシュを活用
「CentOSでNginxとPHP、MySQLを動かす。」で設定した「default.conf」ファイルを開く
$ sudo vi /etc/nginx/conf.d/default.conf
「server」内をに下記コードを追加。
server { ... location ~* ^.+.(css|js)$ { access_log off; log_not_found off; expires 1d; } ... }
保存したらNginxを再起動。
$ sudo service nginx restart
「expires 1d」の部分でキャッシュされる期間を設定している。1日間キャッシュするという意味。「max」を指定した場合は、Expires ヘッダが 31 December 2037 23:59:59 GMT に設定され、Cache-Control の max-age が 10 年になる。
注意するのは、CSSやJSを修正しても閲覧者のブラウザにキャッシュが残り、反映されるまで最長「expires」で指定した日にち掛かってしまうので、頻繁に修正する場合は注意が必要。
ブラウザのキャッシュを削除するにはWindwosの場合は「ctrl + F5」Macの場合は「command + r」でキャッシュを無視して再読み込みしてくれる。
おわりに
表示の高速化に有効なキャッシュですが、キャッシュするファイルを的確に設定しないとCSSの変更が反映されず表示の崩れがおきたりするので、注意が必要です。