# نشر النسخة التجريبية على ezzgold.linkkps.com

## 1. DNS وSSL

أنشئ النطاق الفرعي من لوحة الاستضافة، واجعل Document Root يشير مباشرة إلى:

`/home/CPANEL_USER/ezzgold/public`

أضف سجل `A` للاسم `ezzgold` إلى IP خادم الاستضافة، أو `CNAME` إلى الاسم الذي تعطيه شركة الاستضافة. بعد انتشار DNS فعّل AutoSSL/Let's Encrypt، ولا تفعّل `SESSION_SECURE_COOKIE` قبل عمل HTTPS.

## 2. قاعدة البيانات

من MySQL Databases أنشئ قاعدة ومستخدمًا مستقلين للنسخة التجريبية، امنح المستخدم All Privileges، واختر `utf8mb4_unicode_ci`. لا تستخدم بيانات قاعدة الإنتاج ولا كلمة مرور حساب cPanel.

## 3. الملفات

فك `artifacts/ezzgold-staging-full.zip` داخل `/home/CPANEL_USER/ezzgold`. يجب ألا يوجد ملف `.env` داخل الحزمة. انسخ `deploy/staging.env.example` إلى `.env` على الخادم فقط، ثم أدخل بيانات MySQL وSMTP.

إذا تعذر تغيير Document Root إلى مجلد `public` فتوقف ولا تنقل `index.php` عشوائيًا؛ يلزم تعديل آمن خاص ببنية الاستضافة.

## 4. أوامر الطرفية

```bash
cd /home/CPANEL_USER/ezzgold
bash deploy/cpanel-deploy.sh "$PWD"
```

بعدها أضف Scheduler وQueue من التعليمات الموجودة في `deploy/cron-and-worker.txt`.

## 5. أول تشغيل

افتح `https://ezzgold.linkkps.com/setup` وأنشئ المؤسسة والمالك لأول مرة. لا تُنشأ أي كلمة مرور افتراضية. بعد الإعداد افحص `/health/ready`، أنشئ دفعة Demo من داخل النظام، واختبر حذفها.

## 6. فحص القبول

- `/health/ready` يعيد `status: ready`.
- HTTPS صالح والتحويل من HTTP إلى HTTPS فعال من لوحة الاستضافة.
- `APP_DEBUG=false` ولا يمكن تنزيل `.env` أو فتح مجلدات المشروع.
- تسجيل الدخول، رفع صورة، إنشاء عملية بيع، تقرير مجدول وإشعار Queue تعمل.
- `php artisan backups:create full` ثم التحقق من النسخة يعملان.
- احفظ `APP_KEY` في مدير أسرار منفصل؛ فقدانه يمنع فك النسخ والأرشيفات.
