Cloudflare R2 চ্যানেল যোগ করা
কখন সবচেয়ে উপযোগী
Cloudflare R2 ব্যবহার করুন যখন:
- আপনার ImgHost সাইট ইতিমধ্যে Cloudflare-এ প্রকাশিত এবং একই Cloudflare অ্যাকাউন্টের অধীনে থাকা R2 বাকেট-এ ফাইল সংরক্ষণ করতে চান।
- আলাদা S3 endpoint, access key এবং secret key কনফিগার করতে চান না।
- কম সেটআপে Worker বা Pages-এর R2 binding দিয়ে পড়া ও লেখা চালাতে চান।
সংক্ষেপে:
R2 চ্যানেল ImgHost অ্যাডমিন প্যানেলের ভেতরে হাতে তৈরি করা হয় না। আগে Cloudflare প্রকল্পে একটি R2 বাকেট bind করতে হবে, এবং binding variable নাম অবশ্যই img_r2 হতে হবে।
শুরু করার আগে যা লাগবে
- একটি Cloudflare অ্যাকাউন্ট।
- আগে থেকে তৈরি একটি R2 বাকেট।
- যে Cloudflare প্রকল্পে ImgHost প্রকাশিত আছে, সেটি পরিচালনা করার অনুমতি।
Cloudflare-এ সেট করুন
1. একটি R2 Bucket তৈরি করুন
- Cloudflare ড্যাশবোর্ড-এ লগ ইন করুন।
R2 Object Storageখুলুন।- তৈরি বাকেট-এ ক্লিক করুন।
- বাকেট-এর নাম দিন, যেমন
imgbed।
আপলোড করা ফাইল এই বাকেট-এ সংরক্ষিত হবে।

2. Bucket-টি ImgHost প্রকল্পে Bind করুন
আপনার প্রকাশনার ধরন অনুযায়ী binding location নির্বাচন করুন:
| প্রকাশনার ধরন | Binding location |
|---|---|
| Pages | বর্তমান Pages প্রকল্প -> সেটিংস -> Functions -> R2 বাকেট bindings |
| Worker | বর্তমান Worker -> সেটিংস -> Bindings -> R2 বাকেট bindings |
Binding যোগ করার সময় গুরুত্বপূর্ণ ক্ষেত্রগুলো হলো:
| ক্ষেত্র | মান |
|---|---|
| Variable name | img_r2 |
| R2 বাকেট | আপনার তৈরি করা বাকেট নির্বাচন করুন। |
Variable name হুবহু img_r2 হতে হবে। R2 ফাইল আপলোড, পড়া এবং মুছে ফেলা সবই এই binding নাম-এর ওপর নির্ভর করে।
3. প্রকল্পটি আবার প্রকাশ করুন
Binding সংরক্ষণ করার পর ImgHost আবার প্রকাশ করুন, যাতে Worker বা Pages রানটাইম img_r2-এ প্রবেশ করতে পারে।
ImgHost-এ যা দেখবেন
R2 binding উপলব্ধ হলে খুলুন:
- সিস্টেম সেটিংস।
- আপলোড সেটিংস।
Cloudflare R2চ্যানেল।
সিস্টেম স্বয়ংক্রিয়ভাবে একটি নির্দিষ্ট চ্যানেল তৈরি করে:
| ক্ষেত্র | নির্দিষ্ট মান |
|---|---|
| চ্যানেলের নাম | Cloudflare R2 |
| চ্যানেলের ধরন | cfr2 |
| সংরক্ষণ মোড | binding |
| কনফিগারেশনের উৎস | Environment binding |
এটি একটি নির্দিষ্ট binding চ্যানেল। এটি তৈরি করতে চ্যানেল যোগ করুন ক্লিক করতে হয় না, এবং সাধারণ চ্যানেলের মতো এটি মুছে ফেলা যায় না।
অ্যাডমিন প্যানেলে সম্পাদনাযোগ্য ক্ষেত্র
| ক্ষেত্র | কাজ | প্রয়োজনীয় |
|---|---|---|
| চ্যানেল চালু করুন | R2 আপলোড নির্বাচনে অংশ নেবে কি না নিয়ন্ত্রণ করে। | হ্যাঁ |
| Account ID | Quota limit চালু থাকলে official R2 usage জিজ্ঞাসা করতে ব্যবহৃত হয়। | Quota limit চালু থাকলে প্রস্তাবিত |
| Bucket name | Quota limit চালু থাকলে official R2 usage জিজ্ঞাসা করতে ব্যবহৃত হয়। | Quota limit চালু থাকলে প্রস্তাবিত |
| Quota limit | ধারণক্ষমতার ভিত্তিতে এই R2 চ্যানেল আপলোড নির্বাচনে অংশ নেবে কি না নিয়ন্ত্রণ করে। | না |
| Threshold | ব্যবহার নির্দিষ্ট শতাংশে পৌঁছালে এই চ্যানেলে লেখা বন্ধ করে। | কোটা limit চালু থাকলে প্রয়োজনীয় |
Cloudflare ড্যাশবোর্ডের অ্যাকাউন্ট তথ্য প্যানেল থেকে Account ID কপি করতে পারেন। শুধু তখনই এটি পূরণ করুন যখন ImgHost দিয়ে R2 quota usage জিজ্ঞাসা ও প্রয়োগ করতে চান।

সেটআপ ধাপ
- Cloudflare-এ একটি R2 বাকেট তৈরি করুন।
- ImgHost প্রকল্পের Cloudflare সেটিংস খুলুন।
- R2 বাকেট binding যোগ করুন।
Variable nameহিসেবেimg_r2দিন।- তৈরি করা R2 বাকেট নির্বাচন করুন।
- Binding সংরক্ষণ করে ImgHost আবার প্রকাশ করুন।
- ImgHost -> সিস্টেম সেটিংস -> আপলোড সেটিংস-এ ফিরে যান।
Cloudflare R2চ্যানেল দেখা যাচ্ছে এবং চালু আছে কি না নিশ্চিত করুন।
ধারণক্ষমতার ভিত্তিতে R2-কে আপলোড নির্বাচনে অংশ নিতে দিতে চাইলে quota limit চালু করুন। এরপর Account ID, বাকেট নাম, quota limit এবং threshold দিয়ে সংরক্ষণ করুন।

যাচাই করার পদ্ধতি
- আপলোড সেটিংস-এ নির্দিষ্ট
Cloudflare R2চ্যানেল দেখা যায়। - চ্যানেল কার্ডে এটি চালু দেখায়।
- ছোট একটি পরীক্ষামূলক ফাইল সফলভাবে আপলোড হয় এবং ফেরত পাওয়া লিংক স্বাভাবিকভাবে খোলে।
- কোনো ফাইল খুললে
R2 database binding is not configuredদেখা গেলে রানটাইমimg_r2binding পায়নি। Cloudflare-এ binding নাম পরীক্ষা করে প্রকল্পটি আবার প্রকাশ করুন।