ブラウザキャッシュが効かない-ロリポップのサーバなんか変わった?それともブラウザの仕様変更?キャッシュサイズだろう

ブラウザキャッシュが効かない

ブラウザキャッシュが働くと、一度ダウンロードしたデータではデータ通信が発生しなくなります。

サイネージ目的で、繰り返し動画を再生していると、キャッシュが効かない状態になると、毎回データダウンロードが発生し、大変な事になります。

Chrome上でF12キーを押すとGoogle Chrome デベロッパーツールが起動します。

サーバからの応答が。

Status Code: 304 Not Modified.

と表示される状態では、データの変更がないと判断されファイルキャッシュが効く状態です。データ通信は発生せず、ローカルのデータが表示されます。

キャッシュが効く状態だと

再生されたリソースはドンドンデータが膨らんでいきますが、データ転送量を示すtransferredは増えません。ところが、このtransferredがどんどん増えてしまう状態に、、、。

ブラウザキャッシュが効いていません。

原因はChromeのブラウザキャッシュサイズ

Google Chromeのブラウザキャッシュサイズデフォルトは300MB~320MBとなっています。このファイルキャッシュ上限を超えてしまうと、キャッシュファイルを作成する事ができず、毎回ダウンロードが走ってしまうというわけです。

解決方法としては、

  • データサイズを小さくする
  • Chromeのブラウザキャッシュサイズを大きくする

のどちらかです。

問題の経緯詳細

問題事象について
1..htaccessにおいて、FileETag MTime SizeおよびExpiresByType video/mp4 “access plus 12 hours”設定をしている
2.ブラウザでも状態コード: 304 Not Modified、応答ヘッダCache-Control: max-age=43200となっている
3.上記にも拘わらず、同じmp4ファイルを繰り返しダウンロードしているブラウザにおいて、ブラウザキャッシュが効かない。データ転送が発生している

サポートいただきたい
1.レンタルサーバがわで、ブラウザキャッシュをコントロールするような仕様変更はありましたでしょうか?
2.現在の契約しているアカウントのデータ転送量は1日の制限に収まっていますか?
3.こちらでは2021/2/10よりこの現象を確認しています。これ以前と、これ以降の1日のデータ転送量に大きな違いがでていませんでしょうか?

利用用途

WordPressのスライダープラグインを利用し、繰り返しmp4ファイルを再生しています。以前までは、ブラウザキャッシュを利用し、1日1回程度ダウンロードが走るだけだったものが、現在は、再生するたびにmp4ファイルをダウンロードするようになりました。

キャッシュ設定

.htaccessの設定

# BEGIN BrowserCache
<FilesMatch "\.mp4$">
FileETag MTime Size
</FilesMatch>
<IfModule mod_mime.c>
    AddType video/mp4 .mp4 .m4v
</IfModule>
<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresByType video/mp4 "access plus 12 hours"
</IfModule>
# END BrowserCache

 

Status Code が、304 Not Modified 変更なしとなり

Cache-Control: max-age=43200

という表示で、この状態であればブラウズで持っているキャッシュよりダウンロードされるはずです。

サーバからの転送が発生する

transferredの値がどんどんと積みあがっていきます。繰り返し動画を再生していると、転送量がとんでもない事になってしまいます。

1日の転送量を超えてしまわないか?

この事象を確認したのが、2021年1月10日(水)からです。繰り返し動画を再生する設定にしており、以前はブラウザキャッシュで再生されていたのですが、最近はサーバからの転送が発生しています。

ロリポップには、1日の転送量上限が決まっています。同じデータを繰り返しダウンロードする環境下ではデータ量を超過してしまう不安があります。

Microsoft Edgeでも同じ現象

Edgeでも同じ現象が起こっています。

Microsoft EdgeもChromiumになったため、Chromeと同じじゃないかと言われればそれまでですが、可能性として別ブラウザでも同じ症状が起こるようになっているため、やっぱりサーバ側で何か仕様の変更があったのかなと思ったりしています。

設定した時には確実にブラウザキャッシュが利用されていた

まとめ

もし、ブラウザキャッシュが効かないなと思ったら

  • データサイズを小さくする
  • Chromeのブラウザキャッシュサイズを大きくする

のどちらかを試してみてください。