介紹#
此前我的圖床是基於 Cloudflare + Telegraph 這兩位大善人的,我本以為他們會比我的博客活得更久,因此我默認這是一個長期的解決方案,足夠可靠易用,最重要的是免費。
但最近 Telegram CEO 被捕,韓國也因為審查方面的原因和 Telegram 有衝突,可能受此影響,Telegraph 的圖床服務已經不能上傳新的圖片,舊的圖片尚且可以訪問,但也不知道什麼時候就會完蛋。
於是我開始尋找新的圖床解決方案,我的期望是可靠易用,最好免費,Cloudflare R2+PicGo+WebP Cloud 就是這樣的解決方案。
本文主要參考了 **這篇文章**,另外包括了 WebP Cloud 自定義域名 和 從 Telegraph 遷移圖片到 R2 圖床 的內容。
部署#
我可以保證,在 2024 年 9 月這個時間點,我的部署方式是行之有效的。
您需要#
- Cloudflare 帳號,並綁定信用卡(開啟 R2 的必要條件)
 - 一個域名(非必須,但有的話更帥)
 
接下來讓我們開始吧...
啟用 Cloudflare R2#
- 打開 Cloudflare 控制台,選擇 
R2,在這裡您可以看到R2的免費額度,點擊同意啟用。 - 新建一個 bucket(
Create bucket)- 輸入你喜歡的名字,例如 
image。 - 選擇你希望的地區,例如 
APAC。 - 點擊 
Create bucket進行創建。 
 - 輸入你喜歡的名字,例如 
 - 點擊剛創建的名為 
image的 bucket。- 如果您有域名,進入 
setting,設置Custom Domains(如果您的域名就在 Cloudflare,可以很快速得直接添加)。 - 如果您沒有域名,進入 
setting,點擊R2.dev subdomain旁的Allow Access,輸入allow,你將會獲得一個xxxxxx.r2.dev的地址。 - 現在您應該可以上傳圖片了,您可以在 
imagebucket 中的Objects板塊中上傳圖片進行測試。 
 - 如果您有域名,進入 
 - 現在點擊頁面左邊的 R2,回到 
Overview,在Account details下,點擊Account ID下的Manage R2 API Tokens。- 點擊 
Create API token創建一個新的 API token。 - 取一個名字,例如 
image-R2。 Permission選擇Object Read & Write。Specify buckets下選擇剛剛創建的image。- 點擊 
Create API Token創建。 - 您將獲得 PicGo 所需的信息,包括 
Access Key ID、Secret Access Key以及endpoints。只會顯示一次,請先保存下來。 
 - 點擊 
 - 至此,Cloudflare dashboard 中的操作已經完全結束。
 
設置 PicGo#
- 下載 PicGo。
 - 安裝後點擊插件設置,搜索 
s3,找到作者為WayJam So的插件,安裝。 - 進入圖床設置,找到 
Amazon S3,添加或者修改默認的設置。- 圖床配置名隨便寫,如 
r2。 應用密鑰 ID為Access Key ID。應用密鑰為Secret Access Key。桶名為您設置的 bucket 名字,在這裡為image。自定義節點為endpoints。自定義域名為 您設置的Custom Domains或 Cloudflare 為您分配的xxxxxx.r2.dev地址。- 點擊確定。
 
 - 圖床配置名隨便寫,如 
 - 至此,您應該可以通過 
PicGo上傳照片了。 
使用 WebP Cloud 對您的地址進行代理。#
- 進入 WebP Cloud Dashboard,登錄。
 - 進入左側的 
Price板塊中您可以看到免費額度。 - 進入左側的 
Home板塊,往下拉,點擊Create Proxy。- 選擇你喜歡的地區,這裡我選擇 
Hillsboro, OR。 Proxy Name隨便填,例如R2-image。Proxy Origin URL填入您設置的Custom Domains或 Cloudflare 為您分配的xxxxxx.r2.dev地址。- 點擊 
Create進行創建。 - 這時候將會給您分配一個 
xxxxxx.webp.li地址。 
 - 選擇你喜歡的地區,這裡我選擇 
 - 如果您希望設置自定義域名,進入剛創建的這條 Proxy,點擊 
Custom domain,根據提示在你的 DNS 解析中添加對應的條目,稍等片刻後您就可以在Custom domain中 activate 您的自定義域名了。 - 接下來您需要在 
PicGo中更改自定義域名為您在WebP Cloud中設置的自定義域名或者是WebP Cloud為您分配的xxxxxx.webp.li地址。 
遷移#
我有一大堆圖片保留在 Telegraph 的圖床中,我希望將其全部遷移到 R2 中,PicGo 的插件 pic-migrater 是一個好的選擇,開發者為 Molunerfinn。
- 下載插件後,點擊插件設置,點擊插件右下角的小齒輪,點擊 
配置 plugin - picgo-plugin-pic-migrater。 - 新文件名後綴隨便填,例如 
_new。 - 我將 
舊內容寫入新文件設置為 no,被轉換過的文件就會被命名為源文件名_new.md,我可以方便對這些文件進行檢查。 
但對於某些 markdown 文件, pic-migrater 會出現無法遷移的情況,尚且不知道如何解決。我的做法是針對落單的文件一個一個手動處理。
結尾#
言盡於此。
此文由 Mix Space 同步更新至 xLog 原始鏈接為 https://xxu.do/posts/geek/Cloudflare-R2%2BPicGo%2BWebP-Cloud