// Cloudflare R2 教學

Cloudflare R2 設定教學:給自動化流程一個免費的圖片寄存

自動化流程生成了圖片之後,要有個地方存放並取得一條公開網址,其他工具(Notion、社交平台)才能正常顯示。Cloudflare R2 提供 10GB 免費儲存,而且沒有流量費。這一頁由開 bucket 到接上 n8n 逐步帶你做完,並點出最多人遇到阻礙的一步。

甚麼是 Cloudflare R2?跟 AWS S3 有甚麼分別?

R2 是 Cloudflare 的物件儲存服務(object storage),即用來存放檔案而不是網頁的空間。它用的是跟 Amazon S3 相容的介面,所以任何支援 S3 的工具(n8n、Make、各種程式庫)都可以直接接上,不用另外找專屬套件。

跟 S3 最實際的分別是流量費

  • AWS S3:儲存需要收費,而且每次有人下載(流出流量)也要錢。圖片被大量讀取的話,這筆費用會不斷累積。
  • Cloudflare R2:儲存同樣需要收費(但有 10GB 免費),流出流量免費。圖片會被反覆讀取的用途(社交媒體圖卡、網站圖片)差別最明顯。

對一般中小企的自動化流程來說,圖卡每張只是幾百 KB,10GB 免費額度基本上用不完,實際成本是零。

設定 Cloudflare R2(逐步)

  1. 註冊 Cloudflare 並開 bucket:登入後左邊選 Storage(Object Storage)→ Create bucket → 輸入名稱 → 直接建立。地區可以用預設。
  2. 🔴 啟用 Public Development URL:進入剛建立的 bucket 的 Settings,找到 Public Development URL 並啟用它,然後把那條網址記下。這一步最多人漏。沒有它,檔案上載得到但沒有任何公開網址可以讀取,Notion 那邊就會顯示不到圖片。
  3. 建立 API token:回到 R2 Object Storage 主頁,右下角 Account Details 面板找到 API TokensManageCreate Account API Token,自行輸入名稱。
  4. 權限選 Object Read and Write:不需要 Admin 級別。套用範圍維持預設即可;如果日後會開多個 bucket,這裏可以限定到指定 bucket。
  5. 記下三項資料:建立完成那一頁會顯示 Token valueAccess Key IDSecret Access Key,同頁下方還有 S3 endpoint。⚠️ 這幾樣只顯示一次,關掉頁面就看不到,最好立即貼進自動化工具。
  6. 在自動化工具接上:以 n8n 為例:Credentials → 新增 S3 憑證 → S3 Endpoint 貼 Cloudflare 給你那條 → Regionauto(⚠️ 不要填 AWS 地區代號)→ Access Key IDSecret Access Key 分別貼上 → 儲存。

安全提醒:這一步會產生四組敏感資料。貼進工具之後就不要再顯示、不要截圖或錄影分享。萬一外洩,立即回 Cloudflare 撤銷該 token,再重新建立。

Cloudflare R2 建立 bucket 後的設定頁

建立 bucket 之後的設定頁。

Cloudflare R2 bucket 設定頁啟用 Public Development URL

🔴 最多人漏的一步:在 bucket 的 Settings 啟用 Public Development URL,並把網址記下。

Cloudflare R2 Account Details 面板的 API Tokens Manage 入口

R2 主頁右下角 Account Details:由這裏的 API Tokens → Manage 進去建立 token。

Cloudflare 建立 Account API Token 時選 Object Read and Write 權限

權限選 Object Read and Write,不需要 Admin 級別。

Cloudflare 建立 token 後顯示的 Token value、Access Key ID 與 Secret Access Key 欄位

建立完成後顯示的三樣東西加 S3 endpoint。只顯示一次,即刻記下。(示範帳戶的實際值已遮蓋)

n8n S3 憑證設定畫面的 S3 Endpoint、Region、Access Key ID 欄位

在 n8n 新增 S3 憑證:Region 一定要填 auto,不要填 AWS 地區代號。

Cloudflare R2 收費表,免費額度 10GB 儲存

R2 收費表:10GB 儲存免費,流出流量免費。

常見問題排難

  • 🔴 圖片上載成功,但 Notion/網頁顯示不到:這是最常見的情況。九成是漏了在 bucket 的 Settings 啟用 Public Development URL。沒有啟用的話,檔案存在,但沒有任何公開網址可以讀取。啟用之後記得把那條網址記下,工作流裏要用它組成圖片連結。
  • 顯示的還是別人的圖/舊圖:工作流裏「生成 URL」那一步可能還是預設的示範網址,未換成你自己的。這一步很容易漏,因為上載那邊已經成功,不會報錯。
  • 顯示 403 SignatureDoesNotMatch先檢查 Region 是否填 auto。R2 不使用 AWS 那種地區代號,填了 us-east-1 之類就會簽名不符。其次確認 Access Key ID 與 Secret Access Key 沒有顛倒或複製時漏了字。
  • 顯示 403 AccessDenied(但簽名正確):token 權限不足。建立 token 時要選 Object Read and Write;如果選了 Read only,上載就會被拒。
  • 找不到 S3 endpoint:在 R2 Object Storage 主頁右下角的 Account Details 面板,或者建立 token 完成那一頁都會顯示。它的格式是 https://<你的帳戶 ID>.r2.cloudflarestorage.com
  • token 值找不回:Token value、Access Key ID、Secret Access Key 只在建立完成那一刻顯示一次。關掉頁面就看不到,只能重新建立一個。建立後立即貼進自動化工具最穩妥。

常見問答

免費額度是 10GB 儲存,流出流量完全免費。超出 10GB 之後,每多 1GB 每月收費約 0.015 美元。以自動化圖卡為例,每張幾百 KB,即使每日生成幾張,一年也用不到 10GB。

因為 R2 不像 AWS 那樣按地區分開端點。所有請求都經由同一個帳戶端點,地區由 Cloudflare 自己處理,所以 S3 客戶端要求填的 Region 一欄,填 auto 即可。填了真實地區代號反而會導致簽名驗證失敗。

可以用,但它是給開發測試用的網域,Cloudflare 沒有承諾長期穩定,也有速率限制。如果圖片要長期公開給大量訪客讀取,建議綁定自己的網域(Custom Domain),可在同一個 Settings 頁面設定。做自動化流程內部使用(例如寫進 Notion 給自己看)則完全足夠。

兩者用途不同:Public Development URL 是供人「讀取」的;API token 是給程式「寫」的。自動化流程要把圖片上載上去,所以一定要 token。只是讀取的話,公開網址已經夠。

Object Read and Write 就夠,不需要 Admin 級別。套用範圍方面,如果你只有一個 bucket,套用到全帳戶跟指定單一 bucket 分別不大;如果日後會開多個 bucket 放不同項目的檔案,建議建立 token 時就限定到指定 bucket。

AWS S3、Backblaze B2、DigitalOcean Spaces 都做同一件事,也都相容 S3 介面,所以在 n8n 裏的設定方式幾乎一樣。選 R2 主要是因為流出流量免費加上 10GB 免費額度,對「圖片會被反覆讀取」的用途最划算。

下一步

接好圖片寄存之後,看看可以用它自動化甚麼:

  • 多平台內容起稿引擎:一條選題自動生成三個平台的貼文,加一整套品牌輪播圖,圖卡就是存放在 R2。

把 HTML 截取成圖片那一步在browserless API 設定完整指南;起稿用的 AI 在OpenAI API 設定完整指南

Scroll to Top