前言
之前看了一篇文章,關於介紹 Cloudflare R2 來搭建圖床的方案,主要是白嫖 Cloudflare
的空間和 cdn 服務。我現在部落格 DevNow 的 CDN 使用的是七牛雲,偶爾還是有一點點的支出。
雖然不多,但是吧,看到有白嫖的方案,還是蠢蠢欲動,這不今天就來試著弄下看看。
1. 註冊Cloudflare賬號
先簡單介紹下 Cloudflare
是一家提供網路安全和效能最佳化服務的公司。它的主要功能包括內容分發網路(CDN)、分散式拒絕服務攻擊(DDoS)防護、網際網路安全和最佳化,以及域名系統(DNS)服務。
Cloudflare R2
是 Cloudflare
提供的物件儲存服務。它類似於亞馬遜的 S3(Simple Storage Service)
,但有一個顯著的區別:Cloudflare R2
不收取出站頻寬費用。這意味著使用者在從儲存中檢索資料時不會被額外收費,這對於需要大量傳輸資料的應用來說是一個很大的優勢。
R2 允許使用者儲存和管理大量的非結構化資料,比如圖片、影片、備份檔案等。它與 Cloudflare
的全球網路整合,提供了快速、安全的內容交付,適合需要高效、可靠的儲存和分發解決方案的企業。R2
還支援與現有的 S3 API
相容,方便那些已經在使用 S3
的使用者遷移或擴充套件到 Cloudflare R2
。
2. 繫結域和解析DNS
在左側網站皮膚中新增一個域名,由於我的 blog
域名已經在騰訊雲上買完了,這裡主要將 DNS
解析服務遷移到 Cloudflare
。
如果不是 DNS
解析不是 Cloudflare
的話,狀態這裡會顯示讓你去切換。我這裡用騰訊雲來舉例子,具體步驟如下:
2.1 在騰訊雲裡域名的選單下點選對應域名管理
2.2 然後點選修改 DNS 解析
2.3 這裡我們把預設的 DNSPod 切換到 自定義DNS,然後填寫對應的地址就好
下邊這兩個地址可以在 Cloudflare
中找到,填上就好,然後等待,快的話幾分鐘就好,好了之後 Cloudflare
會傳送郵件通知,如下,這個時候表示已經成功解析過來了。
2.4 這個時候再回到網站這裡發現狀態已經成功變成活動了
3. 開通R2服務
透過左側選單導航進入到 R2 的服務,開通前需要繫結信用卡,支援 Visa
的都可以,方便後邊對於超出免費額度或者開啟一些收費服務。開通後即可建立儲存桶:
建立後可以進入到桶的詳情皮膚:
配置一個自定義域名,後邊可以透過這個訪問。
到這裡基於 R2 的物件儲存服務就基本完事了。後續就可以在儲存桶中儲存物件了。
4. PicGo 配置R2上傳服務
為了縮減上傳圖片的工作流,我使用的是基於 PicGo 的上傳方式,可以透過複製和 url 進行上傳。這裡主要記錄下如何配置上傳到 R2 服務的過程。
R2 是相容S3的格式的,所以這裡直接配置S3,外掛裡搜尋 s3 的外掛,安裝即可:
在「外掛設定」中選擇安裝,「圖床設定」中就新增了 Amazon S3
選項。點選進入配置選項。
這裡有幾項配置需要尤其注意。
- 應用金鑰 ID,填寫
R2 API
中的Access Key ID
(訪問金鑰 ID) - 應用金鑰,填寫
R2 API
中的Secret Access Key
(機密訪問金鑰) - 桶名,填寫
R2
中建立的Bucket
名稱,如我上文的yu-r2-test
- 檔案路徑,上傳到
R2
中的檔案路徑,我選擇使用{fileName}.{extName}
來保留原檔案的檔名和副檔名。 - 自定義節點,填寫
R2 API
中的「為 S3 客戶端使用管轄權地特定的終結點」,即xxx.r2.cloudflarestorage.com
格式的S3 Endpoint
- 自定義域名,填寫上文生成的
xxx.r2.dev
格式的域名或自定義域名,如我配置的https://r2.laughingzhu.cn
上邊的秘鑰資訊在 Cloudflare R2
的服務中可以找到:
建立一個新的 API
令牌,完成建立後,即可看到相關秘鑰,安裝上邊的對應關係填入即可:
其他配置保持預設即可,確認引數無誤後點選「確定」與「設定為預設圖床」即可。
5. PicGo 增加自動壓縮和轉 webp 外掛
我用的是 compress-next
有很多模式可以配置,我這裡選的是 webp-converter
我主要是希望透過轉換 webp
來最佳化圖片載入。安轉完記得進行預設配置:
然後啟用即可,上傳圖片即可轉換為 webp
格式 上傳到 R2
服務
到這裡我 blog 整體的靜態資源已經從七牛雲遷移到 Cloudflare R2
服務了,開始白嫖的日子了,舒服😊。
原文連結:Cloudflare R2 - 免費圖