# دليل تشغيل تطبيق Next.js على cPanel

هذا الملف يحتوي على الخطوات الكاملة لرفع وتشغيل تطبيق Next.js على استضافة cPanel باستخدام **Node.js Selector** الخاص بـ cPanel.

---

## 📋 المتطلبات الأساسية
1. تأكد من توفر ميزة **"Setup Node.js App"** في لوحة تحكم cPanel الخاصة بك.
2. نسخة Node.js المفضلة: **18.x** أو **20.x** (تطبيق Next.js 15/16 يتطلب على الأقل Node.js v18.18.0).

---

## 🛠️ خطوات التركيب والتشغيل (خطوة بخطوة)

### الخطوة 1: رفع الملف المضغوط وفك الضغط
1. قم بالدخول إلى **cPanel** ثم افتح **File Manager (مدير الملفات)**.
2. يُفضّل رفع التطبيق خارج مجلد `public_html` للحفاظ على سرية الملفات البرمجية. على سبيل المثال، قم بإنشاء مجلد جديد باسم `ads-app` في المجلد الرئيسي (Home directory) بجانب مجلد `public_html`.
3. ارفع الملف المضغوط (`ads-app.zip`) إلى داخل مجلد `ads-app`.
4. انقر بزر الماوس الأيمن على الملف ثم اختر **Extract** لفك ضغط جميع الملفات والمجلدات.

---

### الخطوة 2: إنشاء تطبيق Node.js في cPanel
1. ارجع للوحة تحكم cPanel وابحث عن أداة **"Setup Node.js App"**.
2. اضغط على زر **"Create Application"**.
3. قم بملء الحقول التالية:
   * **Node.js version**: اختر **20.x** (أو **18.x** كحد أدنى).
   * **Application mode**: اختر **Production**.
   * **Application root**: اكتب اسم المجلد الذي رفعت فيه الملفات (مثلاً: `ads-app`).
   * **Application URL**: اختر الدومين أو الدومين الفرعي (Subdomain) الذي تريد تشغيل التطبيق عليه.
   * **Application startup file**: اكتب اسم الملف الذي يبدأ تشغيل السيرفر وهو: `server.js`.
4. اضغط على زر **"Create"** باللون الأزرق في الأعلى لحفظ الإعدادات وبدء تشغيل التطبيق.

---

### الخطوة 3: تثبيت حزم الاعتمادات (node_modules)
1. بعد إنشاء التطبيق، ستظهر لك صفحة إعدادات التطبيق.
2. انزل إلى الأسفل قليلاً وابحث عن زر **"Run npm install"** واضغط عليه.
3. انتظر قليلاً حتى تكتمل عملية التثبيت (قد تستغرق دقيقة أو دقيقتين، وستظهر رسالة نجاح باللون الأخضر).

---

### الخطوة 4: إضافة المتغيرات البيئية (Environment Variables)
إذا كان تطبيقك يعتمد على مفاتيح أو متغيرات بيئية مثل Supabase أو OpenAI، يمكنك إضافتها بسهولة من أسفل نفس الصفحة:
1. اذهب لقسم **"Environment variables"**.
2. اضغط على **"Add Variable"**.
3. قم بإدخال الاسم والقيمة لكل متغير، مثل:
   * `NEXT_PUBLIC_SUPABASE_URL`
   * `NEXT_PUBLIC_SUPABASE_ANON_KEY`
   * `SUPABASE_SERVICE_ROLE_KEY`
   * `OPENAI_API_KEY`
   * وغيرها...
4. اضغط **Save** لحفظ المتغيرات.

---

### الخطوة 5: إعادة تشغيل التطبيق
بعد الانتهاء من التثبيت وضبط المتغيرات البيئية:
1. اصعد إلى أعلى الصفحة واضغط على زر **"Restart"**.
2. قم بزيارة رابط موقعك للتأكد من أن التطبيق يعمل بشكل ممتاز!

---

💡 **ملاحظة:** تم حذف مجلد `node_modules` والمجلدات المؤقتة من الملف المضغوط لتقليل حجم الرفع (من 4.7 جيجابايت إلى أقل من 20 ميجابايت)، وسيتم تحميلها مجدداً مباشرة على السيرفر عبر زر **Run npm install**.
