抢注百度搜索高排名流量域名、品牌商标保护、微信绿标安全域名、备案精品短域名,上铭正知产!

 找回密碼
 加入我們

Picgo對接Cloudflare R2的方法

[複製鏈接]
小猪哼囔 發表於 2023-6-28 08:15:42 | 顯示全部樓層 |閱讀模式
前言:
新浪圖床徹底掛了...準備轉投自建存儲。
存儲:Cloudflare R2
R2提供了相對低廉的價格和0流量費用,如圖。
(完整版請見Pricing · Cloudflare R2 docs
前端:Picgo
(畢竟不能手搓S3 API吧
Picgo是Github上熱門的圖床軟件,項目地址可見:
流程:1.安裝Picgo及Node.js
請參閱Picgo項目地址
2.啟用CF-R2,不再贅述
(可能需要準備一張信用卡/Visa Master借記卡亦可)
3.新建一個儲存桶
4.創建完成後,回到Overview,點擊 “Manage R2 API Token” ,Create API Token
注意,API需要Edit權限
會生成一個
Access Key ID
Secret Access Key
請保留備用
5.為CFR2綁定自定義域名:
進入你創建的存儲桶(Bucket),點擊設置(Setting)
在PublicAccess裡面,選擇Connect
輸入一個子域名即可,需要注意的是,你的域名必須託管在Cloudflare上。Cloudflare會自動添加解析。(你也可以使用R2.dev域名,但是R2.dev域名具有請求速率限制,也不適用於緩存和安全性,不建議生產環境使用)。
注意,請設置CORS Policy,以允許外部調用。(CF的意思是直接啟用Public Access亦可實現目的)在我初次撰稿時,cf尚未提供此選項,我需要調整存儲桶的對應域的改寫規則,利用Cloudflare的規則修改HTTP相應頭,加入一個
Access-Control-Allow-Origin * header 來允許任意源的加載
現在R2存儲桶好像支持直接修改CORS了,點擊edit即可
  1. [
  2. {
  3. "AllowedOrigins": [
  4. "*"
  5. ],
  6. "AllowedMethods": [
  7. "GET"
  8. ]
  9. }
  10. ]
複製代碼
注意,配置成*會允許任意來源的加載,這是不安全的,在生產環境中,你還應該加入鑑權等。
但是個人存個圖片而已,問題不大。
隨後進入Picgo軟件,安裝S3插件
進入Amazon S3,進行設置
把上面生成的 Access Key ID 填入 應用密鑰ID;Secret Access Key  填入 應用密鑰
桶就是bucket名,直接填寫即可
文件路徑實際上也包含重命名規則,可按如下格式填寫
[td]
payload
描述
{year}當前日期 - 年
{month}當前日期 - 月
{day}當前日期 - 日
{fullName}完整文件名(含擴展名)
{fileName}文件名(不含擴展名)
{extName}擴展名(不含.)
{md5}圖片 MD5 計算值
{sha1}圖片 SHA1 計算值
{sha256}圖片 SHA256 計算值

地區填寫   us-east-1  切記,必填
(2023.5.23更新,cf好像增加了存儲桶的地域選擇,這個請參照實際文檔吧)
“自定義節點”填寫 框內的一串鏈接,你可以輕易的在R2頁面找到,也被描述為“S3 API”。
建議綁定自定義域名。

自定義域名填寫你在cloudflare R2裡面設置的自定義域名,也可填寫CF提供的Public Bucket URL,不要忘記開頭的 https:// (末尾無需“/”)
開啟“BucketEndpoint”功能,
意為針對Bucket的Endpoint,而非針對API的Endpoint。

R2桶本質上和S3是相似的,還有很多操作(比如設置鑑權等)也可以一併完成。

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?加入我們

×
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 加入我們

本版積分規則

备案权重域名预定

QQ|4um創業社區

GMT+8, 2024-5-20 19:23

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回復 返回頂部 返回列表