كيفية نشر تطبيق Laravel على استضافة مشتركة

نظرة عامة

في هذا المقال، ستتعلم كيفية استضافة تطبيق Laravel على cPanel. في حال كنت تستخدم خادمًا محليًا مثل WAMP أو XAMPP، فإن هذه الطريقة ستساعدك في تجربته قبل رفعه إلى cPanel الخاص بك.

يغطي المقال خطوتين أساسيتين:

  1. كيفية نشر التطبيق على استضافة مشتركة.
  2. كيفية نقل قواعد البيانات دون استخدام أوامر الترحيل (migrate).

تثبيت Laravel على cPanel

هذا التثبيت سيقوم فقط بتنصيب إطار العمل تحت حساب المستخدم الخاص بك، ولكن إذا كنت تستخدم خطة استضافة مشتركة (بصلاحيات SSH محدودة أو بدون صلاحية SSH)، فلن تتمكن من استخدام معظم وظائف Laravel. الطريقة الصحيحة لنشر مشروع Laravel على خطة استضافة مشتركة سيتم شرحها في القسم التالي.

  1. قم بتسجيل الدخول إلى حسابك في cPanel.
  2. ضمن قسم SOFTWARE، اختر Softaculous Apps Installer.
  3. اكتب Laravel في شريط البحث، وفي النافذة التالية اضغط على Install Now.
  4. في الصفحة التالية، قم بتعبئة المعلومات المطلوبة واختر Quick Install:
    • Choose Protocol: اختر بروتوكول SSL أو بدون SSL (http/https).
    • Choose Domain: اختر النطاق الذي ترغب بتثبيت البرنامج عليه.
    • In Directory: اسم المجلد الذي تريد تثبيت التطبيق فيه.
  5. اضغط على Install.
  6. إذا تم التثبيت بنجاح، ستظهر الرسالة التالية:
    Laravel is installed successfully

كيفية نشر تطبيقك على استضافة مشتركة

نفترض أنك أنهيت تطوير تطبيقك. ونفترض كذلك أنك تستخدم Laravel 5.0 (هذا الشرح ينطبق أيضًا على Laravel 5.1).

  1. قم بضغط مجلد المشروع بالكامل على جهازك المحلي. ستحصل على ملف بصيغة zip باسم: laravelProject.zip.
  2. افتح لوحة التحكم cPanel الخاصة بالاستضافة المشتركة.
  3. اضغط على File Manager.
  4. اضغط على Upload.
  5. قم برفع ملف laravelProject.zip إلى المجلد الجذر (وليس public_html).
  6. بعد انتهاء الرفع، قم باستخراج الملف laravelProject.zip.
  7. افتح مجلد laravelProject وقم بنقل محتويات مجلد public فقط إلى مجلد public_html في cPanel.
    • يمكنك الآن حذف مجلد public الفارغ.
  8. انتقل إلى مجلد public_html وابحث عن ملف index.php. اضغط بزر الفأرة الأيمن واختر Code Edit.
  9. سيتم فتح محرر الشيفرة في نافذة جديدة.
  10. قم بتعديل السطرين (22 و36) كالتالي، حسب اسم مجلد مشروعك:

    require
    __DIR__.'/../laravelProject/bootstrap/autoload.php'; $app = require_once __DIR__.'/../laravelProject/bootstrap/app.php';

    :ملاحظة
    لا تقم بتعديل محتوى ملف .htaccess إلا إذا كنت تعلم تماماً ما تقوم به.
  11. انتقل إلى الرابط:
    http://yourdomain.com
    قد تظهر لك أخطاء في قاعدة البيانات (خاصة إذا كانت النماذج Models تعمل في مشروعك). لا تقلق، الخطوة التالية هي ترحيل قواعد البيانات إلى استضافتك المشتركة.


ترحيل الجداول (قواعد البيانات)

من مميزات Laravel أنه يتيح إنشاء قواعد البيانات باستخدام الأمر:
php artisan migrate
لكن في الاستضافة المشتركة، لا يمكن تنفيذ هذا الأمر بسبب غياب صلاحية SSH. ومع ذلك، يمكنك ترحيل الجداول يدوياً بسهولة إذا كان لديك عدد جداول يصل إلى 10.

  1. أنشئ قاعدة بيانات جديدة على استضافتك
    • معظم لوحات cPanel تحتوي على أدوات PHPMyAdmin و Mysql Database Wizard.
    • استخدم المعالج لإنشاء قاعدة بيانات ومستخدم، ثم اربط المستخدم بقاعدة البيانات ومنحه جميع الصلاحيات.
    • احفظ اسم المستخدم وكلمة المرور لاستخدامها لاحقًا.
  2. استخدم PHPMyAdmin لإنشاء الجداول
    • افتح PHPMyAdmin على جهازك المحلي.
    • لكل جدول في قاعدة البيانات، أنشئ الهيكل نفسه على PHPMyAdmin في cPanel.

تصدير واستيراد قواعد البيانات من الجهاز المحلي

  1. من جهازك المحلي، افتح PHPMyAdmin وحدد قاعدة البيانات التي يستخدمها مشروعك.
  2. من شريط الأدوات، اختر Export لتصدير القاعدة.
  3. انتقل إلى لوحة تحكم cPanel، وافتح PHPMyAdmin، واختر قاعدة البيانات التي أنشأتها.
  4. اختر Import وقم بتحميل ملف SQL الذي قمت بتصديره.
  5. إذا تمت العملية بنجاح، سترى رسالة نجاح.

الخطوات النهائية

  1. من File Manager في cPanel، انتقل إلى مجلد laravelProject.
  2. افتح الملف: config/database.php
  3. اضغط بزر الفأرة الأيمن واختر Code Edit.
  4. في السطر رقم 55 تقريبًا، قم بتعديل إعدادات MySQL:
    • أدخل اسم المستخدم وكلمة المرور الخاصة بقاعدة البيانات التي أنشأتها على cPanel.

إنشاء مشروع Laravel جديد

أول خطوة في هذا الدليل هي إنشاء مشروع Laravel. يمكنك تعلم ذلك من خلال التوثيق الرسمي للـ Laravel لمعرفة خطوات الإنشاء.

إزالة كلمة “public” من رابط الموقع

للوصول بسهولة إلى مشروع Laravel بدون استخدام الأمر php artisan serve وبدون ظهور “public” في الرابط:

  1. قم بنقل ملفي index.php و .htaccess من مجلد public إلى جذر المشروع.
  2. افتح ملف index.php وقم بالتعديلات التالية واحفظها:
    • غير السطر 24 إلى: require __DIR__.'/vendor/autoload.php';
    • غير السطر 38 إلى: $app = require_once __DIR__.'/bootstrap/app.php';

ملاحظة:
بما أننا قمنا بإزالة كلمة public من الرابط، فيجب كتابة public/ في مسارات دالة asset() التي تربط ملفات CSS أو JS أو الصور.
مثال:
asset('css/style.css') // يجب أن تصبح => asset('public/css/style.css')

مشاركة:
FacebookTwitterWhatsAppViberCopy LinkTelegramLinkedIn
تم التحديث في أبريل 13, 2025
هل كان المقال مفيداً؟

دروس ذات صلة