mygoodcool

mygoodcool

爱过、错过,不忘初心。

基於Cloudflare R2搭建零成本圖床

本文要介紹的是 Cloudflare 剛推出不久的一個新服務:R2。這是一款兼容 S3 API 的免費雲存儲服務,它允許用戶在全球範圍內的分佈式網絡上存儲和檢索數據。R2 以 “零流量費用對象存儲” 為賣點,宣稱是對象存儲最便宜的選擇。相比其他雲存儲服務,R2 在數據訪問時不計算流量費用,僅根據存儲總量和操作次數計費。你就說牆內哪家雲廠商敢這麼幹吧!

另外 R2 的存儲網絡橫跨 100 多個國家中的 275 個城市,利用 Cloudflare 龐大的內容交付網絡(CDN)實現數據的全球分發和快速訪問。同時還可以與 Cloudflare Workers 原生集成,允許用戶輕鬆執行身份驗證、路由請求,並在 Cloudflare 的邊緣網絡上部署邊緣函數。

🦄 免費套餐
按照 CF 官網的介紹,每個 CF 賬號都可以免費使用 R2 服務,當然免費是有些限制的,每月 10GB 以內存儲免費,另帶每月 100W 次 A 類操作和每月 1000W 次 B 類操作。A 類操作主要是寫操作,B 類型主要就是讀取操作,我們日常訪問 R2 裡面的內容就是 B 類,1000W 對於個人日常使用完全足夠了,另外還可以配合 CF 的緩存,使用量會更少!
Cloudflare R2

🦌 操作方法
使用 R2 的前提是你得先註冊好 CF 賬號(選擇 Free 套餐就行),並且最好在 CF 上解析一個自己的域名。

1️⃣ 創建存儲桶
在左邊菜單中找到 R2,打開概述,點擊右上角的創建存儲桶
Cloudflare R2

填寫存儲桶的名稱,選擇存儲桶的位置(建議放在訪問量最多的區域,比如你的用戶在美麗國比較多,就選北美洲),默認存儲類直接選標準就行。

Cloudflare R2

2️⃣ 設置存儲桶
創建完以後回到概述頁面,打開剛剛創建好的桶,點擊設置。

Cloudflare R2

往下拉,找到公開訪問板塊,點擊連接域,我們給這個桶套一個自己的域名。

Cloudflare R2

輸入你自己的二級域名,比如 imghub.yourdomain.com,點繼續按鈕。

Cloudflare R2

等待片刻後,CF 就會自動在 DNS 的記錄中增加一個類型為 R2 的解析記錄,這是 CF 自己內部專屬的,可以不用管他,總之現在就可以使用這個域名訪問你在 R2 中存儲的圖片了。

Cloudflare R2

3️⃣ 設置緩存
R2 每月有 1000W 免費讀取次數,如果你不放心,可以再增加一層緩存,既可以減少回源讀取次數,又能加速訪問速度,一箭雙雕!CF 每個域名支持免費設置 10 條緩存規則,一般來說都夠用了,稍微使用點技巧也用不了幾條。

在菜單中找到緩存,打開 Cache Rule,點擊創建規則。

Cloudflare R2

輸入規則名稱(隨意),設置匹配規則,這裡我們直接設置為主機名是你上文設置的那個域名即可。當然匹配規則還有很多其他的維度可以選,支持等於、包含、開頭、結尾等運算符,按自己實際要走 CDN 的資源設置即可。

Cloudflare R2

繼續往下拉,在緩存資格中選擇符合緩存條件;在邊緣 TTL 種點擊添加設置,然後選擇忽略緩存控制標頭,使用次 TTL,然後在輸入生存時間 (TTL) 中選擇一個時間,免費賬號支持最短 2 小時、最長 1 年,最為圖床的話建議越大越好,盡量減少回源,也就是減少 R2 存儲桶的 B 類操作次數。

Cloudflare R2

最後拉到頁面最底部,點擊部署,等待 30 秒即可生效,從此你的圖床就是跑在 CDN 上面了。

Cloudflare R2

4️⃣ 上傳圖片
筆者說搭建圖床,當然指的是在 R2 中管理圖片,但並不是說 R2 中只能存儲圖片,這個並沒什麼限制,希望不要誤解。

現在圖床搭建好了,該怎麼傳圖片上去呢?文章開頭提到,R2 是一個兼容 S3 的雲存儲服務,我們可以直接使用現有的支持 S3 的工具上傳即可;當然,如果你不嫌麻煩,也可以直接在 R2 的存儲桶界面上傳。
Cloudflare R2

使用 PicGO 上傳
在存儲桶的設置界面,查看桶所在的位置,比如亞太地區就是 APAC,記錄下來後門會用到。

Cloudflare R2

在賬號 ID 下面有個管理 R2 API 令牌按鈕,點擊去,然後點擊創建 API 令牌。

Cloudflare R2

在創建頁面輸入令牌名稱,權限選擇對象讀和寫即可,其他的保持默認,最後確認創建。

Cloudflare R2

然後就會在頁面上顯示這個令牌的相關信息,注意令牌值、訪問密鑰 ID 和機密訪問密鑰只會顯示一次,關閉這個頁面以後就看不到了,建議單獨記錄下來,並且不要把這些分享給其他人!

Cloudflare R2

接著在 PicGO 的插件設置中搜索 S3,安裝 S3 插件

Cloudflare R2

插件安裝完成後,開始配置了。分別填寫應用密鑰 ID、應用密鑰、桶名、文件路徑、自定義域名,其他的可以不填或者按自己實際情況填。設置完成後就可以正常上傳圖片了。

字段的對應關係如下表:

插件字段 CF 字段或含義
應用密鑰 ID 訪問密鑰 ID
應用密鑰 機密訪問密鑰
桶名 R2 存儲桶名稱
文件路徑 保持默認或自己定義
自定義域名 你的 R2 默認域名或上文設置的自定義域名
Cloudflare R2

以上是使用 PicGO 上傳圖片到 R2 的簡單介紹,如果你使用其他 S3 兼容的工具,基本都差不多,筆者也沒接觸過太多,就不再展開了,關於基於 R2 搭建圖床的教程就介紹到這裡。

總之一句話,從頭到尾你是不是花 1 分錢都沒花!

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。