htmlから読み込んでるjsファイルが更新されない問題
こんな場合
- S3で静的WEBホスティングしてる
- シェルコマンド(bash)使ってる
- AWS-CLI でcpコマンドしてローカルのディレクトリのファイルと同期とってる
- JSのキャッシュでブラウザからみると更新が反映されない
- さっき更新したやつだけ反映したい
覚えておくこと:
--cache-control privete
(メタ情報 cache-control :privete) をつけると、キャッシュされない
no-cache,no-stroe より楽
注意すること:
別の方法で上書きするとメタ情報はなくなる
up.sh
#-- /directory_name にある5分以内に更新したファイルを${copyto_s3_location}にアップロードする
while read file `find /directory_name/ -type f -cmin -5`
do
ext=${file##*.}
if [ 'js' = "${ext}" ] ; then
aws s3 cp \
--content_type application/javascript \
--cache-control privete \
${file} ${copyto_s3_location}
else
aws s3 cp ${file} ${copyto_s3_location}
fi
done