إنتقل إلى المحتوى الرئيسي

تخزين الملفات

يخزّن FeedbackPulse الملفات المرفوعة (الشعارات، وصور المنتجات، وصور التعليقات) على القرص.


📂 الافتراضي: التخزين المحلي

بشكل افتراضي، تُخزَّن الملفات في storage/app/public/ وتُقدَّم عبر الرابط الرمزي public/storage.

FILESYSTEM_DISK=local

هيكل التخزين

storage/app/public/
├── logos/ # شعارات شركات المستأجرين
├── products/ # صور المنتجات
├── submissions/ # صور التعليقات المرفوعة
├── avatars/ # صور ملفات تعريف المستخدمين
└── landing/ # أصول صفحة الهبوط

إنشاء الرابط الرمزي

php artisan storage:link

ينشئ هذا: public/storage → storage/app/public/


☁️ التخزين المتوافق مع S3 (اختياري)

للتخزين السحابي (AWS S3 أو DigitalOcean Spaces أو MinIO):

FILESYSTEM_DISK=s3

AWS_ACCESS_KEY_ID=your_key
AWS_SECRET_ACCESS_KEY=your_secret
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=feedbackpulse-uploads
AWS_URL=https://feedbackpulse-uploads.s3.amazonaws.com

💡 متى تستخدم S3: إذا كان لديك مستأجرون كثيرون يرفعون صورًا، أو إذا أردت تقديم الملفات من CDN لأداء أفضل.


📏 حدود الرفع

قم بالإعداد في خادم الويب:

Nginx:

client_max_body_size 20M;

Apache (.htaccess):

php_value upload_max_filesize 20M
php_value post_max_size 25M

PHP (php.ini):

upload_max_filesize = 20M
post_max_size = 25M
memory_limit = 256M

⏭️ الخطوات التالية