S3 Channel شامل کریں
کب استعمال کریں
S3 channel اس وقت استعمال کریں جب:
- آپ کوئی بھی S3-compatible object storage service منسلک کرنا چاہتے ہیں، جیسے Cloudflare R2، Backblaze B2، MinIO، AWS S3، یا کوئی اور compatible provider۔
- آپ standard S3 configuration model پسند کرتے ہیں:
Endpoint، Access Key، اور Secret Key۔ - آپ native Cloudflare R2 binding channel استعمال نہیں کرنا چاہتے، یا آپ کا storage provider Cloudflare R2 نہیں ہے۔
شروع کرنے سے پہلے کیا چاہیے
| ضرورت | مقصد |
|---|---|
| S3 Endpoint | object storage service کا S3 API endpoint۔ |
| Bucket name | وہ bucket جہاں files محفوظ ہوں گی۔ |
| Region | storage region۔ Cloudflare R2 کے لیے عموماً auto ہوتا ہے۔ |
| Access Key ID | S3 access key ID۔ |
| Secret Access Key | S3 secret access key۔ |
| CDN domain | file access کے لیے اختیاری custom domain۔ |
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منتخب کریں۔
فیلڈز کی تفصیل
| فیلڈ | کام | ضروری |
|---|---|---|
| Channel name | اس S3 channel کا واضح نام، مثلاً s3test یا R2-S3۔ | ہاں |
| Enable channel | یہ کنٹرول کرتا ہے کہ channel upload selection میں شامل ہو یا نہیں۔ | تجویز کردہ |
| Endpoint | مکمل S3 service endpoint، https:// سمیت۔ | ہاں |
| Custom CDN domain | اختیاری۔ set ہونے پر بنایا گیا file links اس domain کو ترجیح دیتے ہیں۔ | نہیں |
| Bucket name | bucket name، مثلاً s3test یا img-r2۔ | ہاں |
| Bucket region | Region۔ Cloudflare R2 کے لیے عموماً auto۔ | ہاں |
| Access Key ID | S3 access key ID۔ | ہاں |
| Secret Access Key | S3 secret access key۔ | ہاں |
| Path-style access | compatibility switch۔ ڈیفالٹ off ہے۔ کچھ MinIO، OpenList، یا self-hosted S3 services کو اس کی ضرورت ہو سکتی ہے۔ | نہیں |
| Quota limit | capacity کی بنیاد پر S3 channel کو upload selection میں شامل یا خارج کرنے کے لیے۔ | نہیں |
| Capacity limit | quota limit فعال ہونے کے بعد ضروری، مثلاً 10 GB۔ | quota limit فعال ہو تو ضروری |
| Threshold | usage اس percentage تک پہنچنے کے بعد لکھنا روک دیتا ہے، مثلاً 90%۔ | quota limit فعال ہو تو ضروری |
| Remark | اپنی maintenance کے لیے notes۔ | نہیں |
Cloudflare R2 S3 API Keys بنائیں
- Cloudflare Dashboard کھولیں۔
R2 Object Storageمیں جائیں۔Manage R2 API Tokensیا API token management entry تلاش کریں۔

- ایسا R2 API token بنائیں جو target bucket تک access رکھتا ہو۔

- بنایا گیا
Access Key IDاورSecret Access Keyکاپی کریں۔

- R2 bucket صفحہ پر واپس جا کر bucket name تصدیق کریں۔
- account کا S3 API endpoint note کریں۔ یہ عموماً ایسا ہوتا ہے:
text
https://your-account-id.r2.cloudflarestorage.comسیٹ اپ کے مراحل
- اپ لوڈ سیٹنگز کھولیں۔
- چینل شامل کریں پر کلک کریں۔
S3منتخب کریں۔- قابل شناخت channel name درج کریں، مثلاً
s3test۔ Endpointمیں S3 API endpoint درج کریں۔- اگر custom CDN استعمال کرتے ہیں تو
Custom CDN domainمیں درج کریں، ورنہ خالی چھوڑ دیں۔ - bucket name درج کریں۔
- region درج کریں۔ Cloudflare R2 مثال کے لیے
autoاستعمال کریں۔ - Access Key ID اور Secret Access Key درج کریں۔
- path-style access کو off رہنے دیں، جب تک provider واضح طور پر require نہ کرے۔
- capacity control چاہیے تو quota limit فعال کریں اور capacity limit / threshold درج کریں۔
- Save پر کلک کریں۔

Verify کیسے کریں
| جانچ | Verify کرنے کا طریقہ |
|---|---|
| چینل card ظاہر ہوتا ہے | محفوظ کرنے کے بعد اپ لوڈ سیٹنگز میں S3 چینل card دکھائی دینا چاہیے۔ |
| Channel is فعال | card کے اوپر دائیں switch کو on رہنا چاہیے۔ |
| اہم فیلڈز محفوظ ہیں | تفصیلی منظر میں Endpoint، Bucket، Region، path-style access، اور متعلقہ فیلڈز دکھنے چاہئیں۔ |
| Upload کام کرتا ہے | test image upload کریں اور تصدیق کریں کہ object target bucket میں آیا ہے۔ |
| Link opens | upload کے بعد returned image link عام طور پر کھلنا چاہیے۔ |
| Capacity display کام کرتا ہے | quota limit فعال ہو تو card used capacity اور ترتیب دی گئی limit دکھائے۔ |
S3 capacity statistics provider bucket کو real time query کر کے نہیں بلکہ ImgHost کے local file records سے calculate ہوتے ہیں۔ S3 configuration save کرنے کے بعد نظام موجودہ D1 records سے quota ledger دوبارہ calculate کرتا ہے۔

FAQ
کیا path-style access فعال کرنا چاہیے؟
عام طور پر نہیں۔
صرف اس وقت فعال کریں جب آپ کا S3-compatible provider virtual-hosted-style URLs support نہ کرے، یا provider documentation واضح طور پر path-style access require کرے۔ کچھ MinIO، self-hosted S3، اور OpenList-compatible endpoints کو یہ چاہیے ہو سکتا ہے۔
CDN domain کس لیے ہے؟
اگر آپ bucket کے آگے CDN یا custom access domain رکھتے ہیں تو اسے یہاں درج کریں۔
ترتیب دینے کے بعد بنائے گئے file links اس domain کو ترجیح دیں گے۔ اگر CDN استعمال نہیں کر رہے تو فیلڈ خالی چھوڑ دیں۔
upload کیوں ناکام ہوتا ہے؟
سب سے پہلے یہ items چیک کریں:
- Endpoint مکمل
https://URL کے ساتھ ہے۔ - bucket name درست ہے۔
- Region provider کی ضرورت کے مطابق ہے۔
- Access Key ID اور Secret Access Key مکمل کاپی کیے گئے ہیں۔
- key کو target bucket پر write permission ہے۔
- provider کو 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