07
APRIL
ウェブFRIDAY 2023 / 4 / 7
Lightsailでファイル更新後、ウェブにしばらく反映されない
Text by Hiroyuki Matsumoto
AWS Lightsail (with WordPress) にてウェブサーバー上のファイル更新後、ブラウザリロードを繰り返してもしばらく更新内容が反映されないという症状。なお、スーパーリロードをかけても変わりません。
実測1分で反映されるのですが、動作確認のときにも待たされてしまうので開発環境では非効率です。
原因を調べましたが、php.ini の opcache.revalidate_freq の設定値が原因でした。
OPcache はPHPの高速化を担うモジュールですが、その設定にキャッシュ関連のものもあるようです。
/opt/bitnami/php/etc/php.ini の下記が該当箇所です。
; How often (in seconds) to check file timestamps for changes to the shared ; memory storage allocation. ("1" means validate once per second, but only ; once per request. "0" means always validate) opcache.revalidate_freq = 60
1 |
60 から 3 に変更し―― |
; How often (in seconds) to check file timestamps for changes to the shared ; memory storage allocation. ("1" means validate once per second, but only ; once per request. "0" means always validate) opcache.revalidate_freq = 3
下記コマンドでデーモンを再起動したら快適に動作確認できるようになりました。
sudo /opt/bitnami/ctlscript.sh restart
TEXT by
松本 博之(まつもとひろゆき)
1978年、鳥取県米子市生まれ。
株式会社マジックワード WEBシステムの開発・運用を担当。
WordPressの実績多数。表面的な使用方法を把握するだけでなく、WordPressのソースコードを読み解いて対応できます。
国家資格の応用情報処理技術者をなんとなくとりました。