Cloudflare R2 चैनल जोड़ना
कब उपयुक्त है
Cloudflare R2 का उपयोग करें जब:
- आपकी ImgHost साइट पहले से Cloudflare पर तैनात है और आप फ़ाइलों को उसी Cloudflare खाते के R2 बकेट में रखना चाहते हैं।
- आप अलग से S3 एंडपॉइंट, एक्सेस कुंजी और गोपनीय कुंजी कॉन्फ़िगर नहीं करना चाहते।
- आप चाहते हैं कि पढ़ना और लिखना कम से कम कॉन्फ़िगरेशन के साथ Worker या Pages के R2 बाइंडिंग से हो।
संक्षेप में:
R2 चैनल ImgHost प्रशासन पैनल में मैन्युअल रूप से नहीं बनाया जाता। पहले आपको R2 बकेट को Cloudflare प्रोजेक्ट से जोड़ना होगा, और बाइंडिंग वेरिएबल का नाम ठीक img_r2 होना चाहिए।
शुरू करने से पहले क्या चाहिए
- Cloudflare खाता।
- पहले से मौजूद R2 बकेट।
- उस Cloudflare प्रोजेक्ट को प्रबंधित करने की अनुमति जहाँ ImgHost तैनात है।
Cloudflare में कॉन्फ़िगर करना
1. R2 बकेट बनाएँ
- Cloudflare Dashboard में साइन इन करें।
R2 Object Storageखोलें।- बकेट बनाने पर क्लिक करें।
- बकेट का नाम चुनें, उदाहरण के लिए
imgbed।
अपलोड की गई फ़ाइलें इसी बकेट में सहेजी जाएँगी।

2. बकेट को ImgHost प्रोजेक्ट से जोड़ें
डिप्लॉयमेंट प्रकार के अनुसार बाइंडिंग स्थान चुनें:
| डिप्लॉयमेंट प्रकार | बाइंडिंग स्थान |
|---|---|
| Pages | Current Pages project -> Settings -> Functions -> R2 bucket bindings |
| Worker | Current Worker -> Settings -> Bindings -> R2 bucket bindings |
बाइंडिंग जोड़ते समय ये फ़ील्ड महत्वपूर्ण हैं:
| फ़ील्ड | मान |
|---|---|
| वेरिएबल नाम | img_r2 |
| R2 बकेट | बनाया हुआ बकेट चुनें। |
वेरिएबल नाम बिल्कुल img_r2 होना चाहिए। R2 फ़ाइलों का अपलोड, पढ़ना और हटाना सभी इसी बाइंडिंग नाम पर निर्भर करते हैं।
3. प्रोजेक्ट फिर से तैनात करें
बाइंडिंग सहेजने के बाद ImgHost को फिर से तैनात करें, ताकि Worker या Pages रनटाइम img_r2 तक पहुँच सके।
ImgHost में क्या दिखाई देगा
जब R2 बाइंडिंग उपलब्ध हो जाए, तो खोलें:
- सिस्टम सेटिंग्स।
- अपलोड सेटिंग्स।
Cloudflare R2चैनल।
सिस्टम अपने आप एक स्थिर चैनल बनाता है:
| फ़ील्ड | स्थिर मान |
|---|---|
| चैनल नाम | Cloudflare R2 |
| चैनल प्रकार | cfr2 |
| भंडारण मोड | binding |
| कॉन्फ़िगरेशन स्रोत | पर्यावरण बाइंडिंग |
यह बाइंडिंग पर आधारित स्थिर चैनल है। इसे बनाने के लिए चैनल जोड़ें पर क्लिक करने की आवश्यकता नहीं है, और इसे सामान्य चैनल की तरह हटाया नहीं जा सकता।
प्रशासन पैनल में संपादन योग्य फ़ील्ड
| फ़ील्ड | कार्य | आवश्यक |
|---|---|---|
| चैनल सक्षम करें | तय करता है कि R2 अपलोड चयन में शामिल होगा या नहीं। | हाँ |
| Account ID | केवल तब उपयोग होता है जब कोटा सीमाएँ चालू हों और आधिकारिक R2 उपयोग पूछना हो। | कोटा सीमाएँ चालू हों तो सुझाया गया |
| बकेट नाम | केवल तब उपयोग होता है जब कोटा सीमाएँ चालू हों और आधिकारिक R2 उपयोग पूछना हो। | कोटा सीमाएँ चालू हों तो सुझाया गया |
| कोटा सीमा | तय करती है कि यह R2 चैनल क्षमता के आधार पर अपलोड चयन में शामिल होगा या नहीं। | नहीं |
| थ्रेशोल्ड | उपयोग दिए गए प्रतिशत तक पहुँचने पर इस चैनल में लिखना रोकता है। | कोटा सीमाएँ चालू हों तो आवश्यक |
Account ID को Cloudflare Dashboard के खाता जानकारी पैनल से कॉपी किया जा सकता है। इसे केवल तब भरें जब आप चाहते हैं कि ImgHost R2 कोटा उपयोग पूछे और लागू करे।

कॉन्फ़िगरेशन चरण
- Cloudflare में R2 बकेट बनाएँ।
- ImgHost प्रोजेक्ट की Cloudflare सेटिंग्स खोलें।
- R2 बकेट बाइंडिंग जोड़ें।
- वेरिएबल नाम
img_r2रखें। - बनाया हुआ R2 बकेट चुनें।
- बाइंडिंग सहेजें और ImgHost को फिर से तैनात करें।
- ImgHost -> सिस्टम सेटिंग्स -> अपलोड सेटिंग्स पर लौटें।
- पुष्टि करें कि
Cloudflare R2चैनल दिखाई देता है और सक्षम है।
यदि आप चाहते हैं कि R2 क्षमता के आधार पर अपलोड चयन में शामिल हो, तो कोटा सीमा सक्षम करें और सहेजने से पहले Account ID, बकेट नाम, कोटा सीमा और थ्रेशोल्ड भरें।

सत्यापन
- स्थिर
Cloudflare R2चैनल अपलोड सेटिंग्स में दिखाई देता है। - चैनल कार्ड दिखाता है कि यह सक्षम है।
- एक छोटी परीक्षण फ़ाइल सफलतापूर्वक अपलोड होती है और लौटाया गया लिंक सामान्य रूप से खुलता है।
- यदि फ़ाइल खोलते समय
R2 database binding is not configuredदिखाई दे, तो रनटाइम कोimg_r2बाइंडिंग नहीं मिली है। Cloudflare में बाइंडिंग नाम जाँचें और प्रोजेक्ट फिर से तैनात करें।