Kurt Hsu's blog

The Rails developer in taiwan.


  • 首頁

  • 標籤

  • 分類

  • 歸檔

Clean AWS Cloudfront cache(清除快取)

發表於 2019-08-13 更新於 2020-04-21 分類於 AWS , Cloudfront , S3

上一篇教學文章完成後, 只要改變文章再次 deploy 上去因為 Cloudfront 的 cache 特性並不會立即更新, 甚至連首頁的 index.html 頁面也沒有新的文章(但輸入正確網址其實是有的), 本篇記錄一下以下事情:

  1. 快速清 cache
  2. 找到正確的中文檔案路徑

快速清 cache

其實 AWS Cloudfront 已經把它做得非常簡單, 參考官方文件說明是讓 cache 在 Cloudfront 的檔案立即失效, 首先直接到該 Cloudfront 的 Invalidations tag 介面, 然後點選 Create invalidation

先嘗試著清除首頁, 也就是在 Object paths 內輸入/index.html

成功後就會看到他在跑, 單隻檔案的話大概一分鐘內就會跑完狀態轉為 Completed

這邊可以支援一次刪除多個檔案或選取多個檔案, 其實就跟 .gitignore 一樣的規則啦, 也可以參考官方文件說明的失效路徑

找到正確的檔案路徑

我們無法直接複製有中文的 Object paths, 例如此篇文章的 URL 為:
/2019/08/13/Clean%20AWS%20Cloudfront%20cache(使檔案失效)/
這是一個資料夾目錄所以他真正會去找的檔案為:
/2019/08/13/Clean%20AWS%20Cloudfront%20cache(使檔案失效)/index.html
但這也是錯的, 因為只要有中文字就是非法字元, 所以我們到 S3 Bucket 循著這個路徑一直找到該 index.html 檔案點選進去, 在 Overview 的畫面拉到最底下有個 Object URL, 除了 domain 之外都複製起來, 這個才是該檔案可以給 Invalidations 的合法路徑

注意

路徑一個月只免費一千條(雖然我是覺得一個簡單的 blog 來說超夠用了), 詳情請參考官方文件支付檔案失效的費用

# AWS # S3
[Hexo]利用Cloudfront讓Hexo部署到S3
[AWS]解決svg圖片在S3無法顯示變成下載問題(by Asset Sync)
  • 文章目錄
  • 本站概要

Kurt Hsu

Progress One Percent Every Day
171 文章
55 分類
163 標籤
RSS
  1. 1. 快速清 cache
  2. 2. 找到正確的檔案路徑
  3. 3. 注意
© 2020 Kurt Hsu
由 Hexo 強力驅動 v3.8.0
|
主題 – NexT.Muse v7.3.0