S3 চ্যানেল যোগ করা
কখন সবচেয়ে উপযোগী
S3 চ্যানেল ব্যবহার করুন যখন:
- Cloudflare R2, Backblaze B2, MinIO, AWS S3 অথবা অন্য কোনো S3-compatible অবজেক্ট স্টোরেজ পরিষেবা যুক্ত করতে চান।
- স্ট্যান্ডার্ড S3 কনফিগারেশন মডেল পছন্দ করেন:
Endpoint, Access Key এবং Secret Key। - নেটিভ Cloudflare R2 binding চ্যানেল ব্যবহার করতে চান না, অথবা আপনার স্টোরেজ প্রদানকারী Cloudflare R2 নয়।
শুরু করার আগে যা লাগবে
| প্রয়োজনীয় তথ্য | উদ্দেশ্য |
|---|---|
| S3 Endpoint | অবজেক্ট স্টোরেজ পরিষেবার S3 API endpoint। |
| Bucket name | ফাইল যেখানে সংরক্ষিত হবে সেই বাকেট। |
| Region | সংরক্ষণ অঞ্চল। Cloudflare R2-এর জন্য সাধারণত auto। |
| Access Key ID | S3 access key ID। |
| Secret Access Key | S3 secret access key। |
| CDN ডোমেইন | ফাইল অ্যাক্সেসের জন্য ঐচ্ছিক কাস্টম ডোমেইন। |
Cloudflare R2-কে S3 API দিয়ে ব্যবহারের উদাহরণ:
text
Endpoint: https://your-account-id.r2.cloudflarestorage.com
Bucket: your-r2-bucket-name
Region: auto
Access Key ID: copied from the Cloudflare R2 API token
Secret Access Key: copied from the Cloudflare R2 API tokenকোথায় যোগ করবেন
- সিস্টেম সেটিংস খুলুন।
- আপলোড সেটিংসে যান।
- উপরের ডান পাশে চ্যানেল যোগ করুন ক্লিক করুন।
S3নির্বাচন করুন।
ক্ষেত্রের বিবরণ
| ক্ষেত্র | কাজ | প্রয়োজনীয় |
|---|---|---|
| চ্যানেলের নাম | এই S3 চ্যানেলের সহজে চেনা যায় এমন নাম, যেমন s3test বা R2-S3। | হ্যাঁ |
| চ্যানেল চালু করুন | এই চ্যানেল আপলোড নির্বাচনে অংশ নেবে কি না নিয়ন্ত্রণ করে। | প্রস্তাবিত |
| Endpoint | https://. পূর্ণ S3 পরিষেবা endpoint। | হ্যাঁ |
| Custom CDN domain | ঐচ্ছিক। সেট করা হলে তৈরি হওয়া ফাইল লিংকে এই ডোমেইন-কে অগ্রাধিকার দেওয়া হবে। | না |
| Bucket name | বাকেট নাম, যেমন s3test বা img-r2। | হ্যাঁ |
| Bucket region | অঞ্চল। Cloudflare R2-এর জন্য সাধারণত auto। | হ্যাঁ |
| Access Key ID | S3 access key ID। | হ্যাঁ |
| Secret Access Key | S3 secret access key। | হ্যাঁ |
| Path-style access | সামঞ্জস্যতার সুইচ। ডিফল্টভাবে বন্ধ। কিছু MinIO, OpenList অথবা self-hosted S3 পরিষেবায় এটি দরকার হতে পারে। | না |
| Quota limit | ধারণক্ষমতার ভিত্তিতে এই S3 চ্যানেল আপলোড নির্বাচনে অংশ নেবে কি না নিয়ন্ত্রণ করে। | না |
| Capacity limit | Quota limit চালু করার পর প্রয়োজনীয়, যেমন 10 GB। | Quota limit চালু থাকলে প্রয়োজনীয় |
| Threshold | ব্যবহার এই শতাংশে পৌঁছালে লেখা বন্ধ করে, যেমন 90%। | Quota limit চালু থাকলে প্রয়োজনীয় |
| Remark | নিজস্ব রক্ষণাবেক্ষণের নোট। | না |
Cloudflare R2 S3 API Keys তৈরি করা
- Cloudflare ড্যাশবোর্ড খুলুন।
R2 Object Storage-এ যান।Manage R2 API Tokensঅথবা API টোকেন ব্যবস্থাপনার এন্ট্রি খুঁজুন।

- লক্ষ্য বাকেট-এ প্রবেশ করতে পারে এমন R2 API টোকেন তৈরি করুন।

- তৈরি হওয়া
Access Key IDএবংSecret Access Keyকপি করুন।

- R2 বাকেট পৃষ্ঠায় ফিরে বাকেট নাম নিশ্চিত করুন।
- অ্যাকাউন্টের S3 API endpoint লিখে রাখুন। সাধারণত এটি এমন দেখায়:
text
https://your-account-id.r2.cloudflarestorage.comসেটআপ ধাপ
- আপলোড সেটিংস খুলুন।
- চ্যানেল যোগ করুন ক্লিক করুন।
S3নির্বাচন করুন।- সহজে চেনা যায় এমন চ্যানেলের নাম দিন, যেমন
s3test। Endpoint-এ S3 API endpoint দিন।- কাস্টম CDN ব্যবহার করলে
Custom CDN domain-এ দিন; না হলে খালি রাখুন। - বাকেট নাম দিন।
- Region দিন। Cloudflare R2 উদাহরণের ক্ষেত্রে
autoব্যবহার করুন। - Access Key ID এবং Secret Access Key দিন।
- প্রদানকারী স্পষ্টভাবে না চাইলে path-style access বন্ধ রাখুন।
- ধারণক্ষমতা নিয়ন্ত্রণ চাইলে quota limit চালু করে capacity limit এবং threshold দিন।
- সংরক্ষণ ক্লিক করুন।

যাচাই করার পদ্ধতি
| পরীক্ষা | কীভাবে যাচাই করবেন |
|---|---|
| চ্যানেল কার্ড দেখা যায় | সংরক্ষণের পর আপলোড সেটিংস পৃষ্ঠায় S3 চ্যানেল কার্ড দেখা উচিত। |
| চ্যানেল চালু আছে | কার্ডের উপরের ডান পাশের সুইচ চালু থাকা উচিত। |
| মূল ক্ষেত্রগুলো সংরক্ষিত হয়েছে | বিস্তারিত দৃশ্যে Endpoint, Bucket, Region, path-style access এবং সংশ্লিষ্ট ক্ষেত্রগুলো দেখা উচিত। |
| আপলোড কাজ করছে | একটি পরীক্ষামূলক ছবি আপলোড করে লক্ষ্য বাকেট-এ অবজেক্ট এসেছে কি না নিশ্চিত করুন। |
| লিংক খোলে | আপলোডের পর ফেরত পাওয়া ছবির লিংক স্বাভাবিকভাবে খোলা উচিত। |
| ধারণক্ষমতা প্রদর্শন কাজ করছে | Quota limit চালু থাকলে কার্ডে ব্যবহৃত ধারণক্ষমতা এবং সেট করা সীমা দেখা উচিত। |
S3 ধারণক্ষমতার পরিসংখ্যান প্রদানকারীর বাকেট real time-এ কোয়েরি করে নয়, ImgHost-এর local file records থেকে হিসাব করা হয়। S3 কনফিগারেশন সংরক্ষণের পর সিস্টেম বর্তমান D1 records থেকে quota ledger আবার হিসাব করে।

FAQ
Path-style access চালু করব?
সাধারণত নয়।
শুধু তখনই চালু করুন যখন আপনার S3-compatible প্রদানকারী virtual-hosted-style URLs সমর্থন করে না, অথবা প্রদানকারীর documentation স্পষ্টভাবে path-style access চাইছে। কিছু MinIO, self-hosted S3 এবং OpenList-compatible endpoint-এ এটি লাগতে পারে।
CDN ডোমেইন কী কাজে লাগে?
বাকেট-এর সামনে CDN বা কাস্টম access ডোমেইন থাকলে এখানে দিন।
সেট করার পর তৈরি হওয়া ফাইল লিংকে এই ডোমেইন-কে অগ্রাধিকার দেওয়া হবে। CDN ব্যবহার না করলে ক্ষেত্রটি খালি রাখুন।
আপলোড ব্যর্থ হলে কী দেখব?
আগে এগুলো পরীক্ষা করুন:
- Endpoint পূর্ণ
https://URL-সহ আছে। - বাকেট নাম সঠিক।
- Region প্রদানকারীর শর্তের সঙ্গে মেলে।
- Access Key ID এবং Secret Access Key সম্পূর্ণভাবে কপি করা হয়েছে।
- key-এর লক্ষ্য বাকেটে লেখার অনুমতি আছে।
- প্রদানকারী path-style access চায় না, অথবা প্রয়োজন হলে path-style access চালু করা হয়েছে।
দ্রুত তালিকা
text
Prepare S3 Endpoint, Bucket, Region, Access Key, and Secret Key
-> Open Upload Settings
-> Add Channel
-> Select S3
-> Enter Endpoint / Bucket / Region / Access Key / Secret Key
-> Enter a CDN domain if needed
-> Leave path-style access off by default
-> Enable quota limit if needed
-> Save
-> Upload a test image and check the result