日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

服务器里的文件怎么实时更新,简单几步,利用Serverless,让COS中文件变更自动刷新CDN...

發布時間:2025/3/20 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 服务器里的文件怎么实时更新,简单几步,利用Serverless,让COS中文件变更自动刷新CDN... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

這幾天遇到這樣的一個場景,相信也是大多數的站長會遇到的一個問題:

自己的一個個人站點使用了COS作為前端靜態資源的存儲(JS、CSS、圖片等等),同時開啟了CDN作為資源的加速分發,為了最大的達到加速效果,把這些資源的緩存時間設置30天及以上。某一天,自己的站點需要變更一下css樣式,修改完之后扔到COS中,發現站點中的樣式仍沒有生效。最后想起是命中了CDN的緩存,因此需要到 CDN控制臺 進行URL刷新。

現狀

目前COS(對象存儲)控制臺是沒有提供這樣一個功能:當啟用了CDN,COS中

分析

世界是由懶人創造的。

上面提到的刷新的工作,一次還好,但每次更新站點的靜態文件都需要去執行這樣的操作,這樣重復性的功能是一定要得到解決的,誰讓我懶…

想了下,COS文件變更的場景分為 2 種:

API上傳GUI上傳(控制臺、COS Browser…)

要實現自動刷新CDN,則需要用到CDN的 刷新URL的API 。

API上傳

如果你是在代碼里去上傳靜態資源的,那么你是能夠知道文件上傳的時刻的,在文件傳完后去調用CDN的API則完成工作。

但是,如果你也同時通過COS控制臺來上傳文件,那這樣的場景則覆蓋不了,因此這種做法并不全面。在此也不做多的描述了。

GUI上傳

首先,會遇到一個難題,COS本身沒有提供設置文件更變之后的回調的功能,如果能拿到這個的回調,則不管是通過什么方式的上傳,均能被覆蓋到。

既然寫了這篇東西,也不賣關子了,直接介紹下我們的主角:SCF(無服務器云函數),

下面我們就一步步來實現我們要的功能:

1、去 SCF控制臺 創建函數

注意: 地域需要選擇與COS中存放靜態資源的Bucket同個地域的,這里以我廣州的 Bucket 為例,創建廣州的函數

image_1ccfkdc6jp0uif0o1pmhti79.png

起個名字叫 cdn_refresh, 環境的話,我選擇 Nodejs(這里推薦大家選 Nodejs 就行,因為我的這段demo是用的node,你需要使用的話,不懂node也沒關系,改一下配置就行)

image_1ccfkj8gsc2o5fg6jdbmv98nm.png

2、修改 demo 配置

下載我這個 demo的代碼,解壓后修改里面的幾個配置信息,包括secretId、secretKey、以及你的cdn域名

把寫好的代碼壓縮成 zip 包,通過本地上傳 zip 包選項傳上去,執行方法不用修改

image_1ccfl3ds1mjafae2mi8oqd161g.png

3、添加觸發方式,完成創建

選擇 COS 觸發,Bucket選擇靜態資源存儲的bucket,事件類型我們選擇文件上傳,點擊保存,完成函數創建

image_1ccfl90dp1502on76371v6jsa1t.png

4、再次添加文件刪除的觸發方式,完成配置

上面我們支持了文件上傳的觸發方式,這里再添加上文件刪除的觸發,這樣才是完整的文件變更

https://www.fwqwd.com/wp-content/uploads/2020/11/20201105175908-67.png

https://www.fwqwd.com/wp-content/uploads/2020/11/20201105175909-50.png

測試效果

以上,我們就完成了 SCF 側函數的配置,那下面我們直接看效果就行

我在控制臺上傳了文件 nba.jpg

image_1ccflpknt1st2r01dv3cq11mqd3k.png

我們在 SCF 控制臺能看到調用相關的日志

image_1ccfltj6q15ft1iim17hmfacihe41.png

最后,因為 CDN刷新是異步刷新,我們可以去 CDN控制臺 查看刷新記錄

image_1ccfm0fu81c4a8o33es9ha1per4e.png

結語

至此,我們就完成了 COS 文件中變更到自動刷新 CDN 的流程。

最后再附上這個demo的下載地址:https://galenye-1251496585.cos.ap-guangzhou.myqcloud.com/scf_about_cdn_refresh.zip

注明:本文來自投稿,不代表服務器文檔網立場,如若轉載,請注明出處:https://www.fwqwd.com/13947.html

總結

以上是生活随笔為你收集整理的服务器里的文件怎么实时更新,简单几步,利用Serverless,让COS中文件变更自动刷新CDN...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。