كيفية تثبيت Laravel على Ubuntu 20.04

كل ما تحتاج إلى معرفته لنشر تطبيق ويب Laravel على جهاز Ubuntu 20.04 LTS

Laravel هو إطار PHP مفتوح المصدر شائع جدًا مع بناء جملة معبر وأنيق يستخدم لتصميم تطبيقات الويب الحديثة والجميلة. يهدف Laravel إلى التخلص من متاعب تطوير الويب وجعلها تجربة ممتعة وإبداعية ، وتحويل مطوري الويب إلى صناع ويب.

في هذا الدليل ، ستتعلم كيفية تثبيت Laravel مع LAMP stack على خادم Ubuntu 20.04 لتشغيل تطبيق الويب الخاص بك.

المتطلبات الأساسية

لاتباع هذا الدليل ، ستحتاج إلى خادم Ubuntu 20.04 LTS وتسجيل الدخول كملف سودو المستعمل. قبل أن نبدأ ، نقوم بتحديث وترقية حزم Ubuntu 20.04 عن طريق تشغيل:

تحديث sudo apt && sudo apt Upgrade

تثبيت LAMP Stack

LAMP هو اختصار لـ إل نظام التشغيل inux ، أ خادم الويب pache ، م قاعدة بيانات ySQL و ص لغة برمجة HP. نحن بالفعل على Ubuntu 20.04 الذي يحدد Linux في حزمة LAMP. لذلك سنقوم بتثبيت باقي الحزم الثلاثة لإكمال حزمة LAMP لتطبيق Laravel الخاص بنا.

لا توجد حزمة وصفية متاحة لتثبيت مكدس LAMP في مستودعات Ubuntu 20.04. ولكن يمكننا استخدام ميزة صغيرة وأنيقة لـ ملائم مدير الحزم يسمى المهام. يتم الإشارة إلى المهام باستخدام اسم المهمة المتاحة مع المتدرب (^) ملحق به.

sudo apt install خادم المصباح ^

سيقوم هذا الأمر بالبحث في ملفات قائمة الحزم عن كل حقل "Task:" وتثبيت جميع الحزم مع "lamp-server" في حقل المهمة. لذلك سيتم تثبيت حزمة LAMP المكونة من حزم Apache و MySQL و PHP مع جميع تبعياتها على خادم Ubuntu الخاص بك.

تكوين جدار الحماية

بمجرد تثبيت LAMP stack ، ستحتاج أيضًا إلى تكوين جدار الحماية غير المعقد (UFW) وتغيير قواعده بحيث يمكنك الوصول إلى خادم Apache من الإنترنت.

يوفر UFW ملفات تعريف تطبيقات بسيطة يمكن استخدامها لتغيير القواعد وتبديل حركة المرور على منافذ الشبكة. قم بتشغيل الأمر التالي لسرد جميع التطبيقات التي تصل إلى منافذ الشبكة:

قائمة تطبيقات sudo ufw

سترى ناتجًا مثل هذا:

التطبيقات المتاحة: Apache Apache Full Apache Secure OpenSSH

منافذ الشبكة المفتوحة هذه الملفات الشخصية على خادم Ubuntu 20.04 مذكورة أدناه:

  • اباتشي: هذا الملف الشخصي يفتح فقط المنفذ 80 (يسمح بحركة مرور HTTP)
  • Apache Full: يفتح ملف التعريف هذا كليهما 80 & 443 المنافذ (يسمح بمرور HTTP و HTTPS)
  • Apache Secure: يفتح ملف التعريف هذا المنفذ فقط 443 (يسمح بمرور HTTPS)
  • OpenSSH: يفتح ملف التعريف هذا المنفذ 22 الذي يسمح ببروتوكول SSH

تحتاج إلى تمكين ملف تعريف "Apache Full" والذي سيسمح بحركة المرور إلى خادم الويب Apache من الإنترنت. بالإضافة إلى ذلك ، ستحتاج أيضًا إلى تمكين ملف تعريف "OpenSSH" الذي يسمح بحركة المرور على المنفذ 22 (SSH) على خادم Ubuntu 20.04 الخاص بك. إذا قمت بتمكين UFW بدون السماح بملف تعريف "OpenSSH" ، فلن تتمكن من الاتصال بخادمك باستخدام SSH.

لتغيير قاعدة UFW والسماح بحركة المرور على المنفذ 80 و 22، يركض:

sudo ufw تسمح لـ 'Apache Full' sudo ufw تسمح لـ 'OpenSSH'

ثم قم بتمكين جدار حماية UFW باستخدام الأمر التالي:

sudo ufw تمكين

قد تحصل على رسالة فورية تقول "قد يعطل الأمر اتصالات ssh الحالية. متابعة العمليات (y | n)؟ ". صحافة ص للمتابعة لأننا أضفنا بالفعل قاعدة للسماح لـ SSH في UFW.

يمكنك الآن الوصول إلى صفحة الويب الافتراضية في Apache باستخدام عنوان IP لخادم Ubuntu من الإنترنت. للقيام بذلك ، افتح متصفحك واكتب عنوان IP لخادم Ubuntu 20.04 في شريط URL واضغط على Enter.

// Your_ubuntu_server_ip

تؤكد هذه الصفحة أن خادم الويب Apache يعمل بشكل صحيح وأن قواعد UFW تم إعدادها بشكل صحيح.

إعداد قاعدة بيانات MySQL لـ Laravel

يجعل Laravel 7 التفاعل مع قواعد البيانات أمرًا بسيطًا للغاية عبر الخلفيات المختلفة لقاعدة البيانات التي يدعمها مثل MySQL الإصدار 5.6+ و PostgreSQL 9.4+ و SQLite 3.8.8+ و SQL Server 2017+. لدينا بالفعل أحدث حزمة MySQL مثبتة مع مصباح قطع ^ مهمة. لذلك في هذا القسم ، سنقوم بتهيئة خادم MySQL ثم ننظر في كيفية إعداد مستخدم MySQL جديد وقاعدة بيانات لتطبيق Laravel.

تكوين MySQL

تأتي قاعدة بيانات MySQL مصحوبة بنص أمان مثبت مسبقًا يمكن استخدامه لإزالة بعض الإعدادات الافتراضية غير الآمنة. يوصى بتشغيل هذا البرنامج النصي قبل نشر تطبيق Laravel الخاص بك.

sudo mysql_secure_installation

سيقوم الأمر أعلاه بتنفيذ البرنامج النصي الأمني ​​الذي سيطالبك بسلسلة من الأسئلة لتكوين خادم MySQL.

أولاً ، سيتم سؤالك عما إذا كنت تريد إعداد ملف تحقق من كلمة المرور توصيل في. يتحقق هذا المكون الإضافي من كلمة المرور الخاصة بك ويصنفها على أنها آمنة أو غير آمنة بناءً على مستوى سياسة التحقق من صحة كلمة المرور الذي ستختاره قريبًا. لذا اضغط ص إذا كنت تريد تمكين هذا البرنامج المساعد.

انتاج: تأمين نشر خادم MySQL. الاتصال بـ MySQL باستخدام كلمة مرور فارغة. يمكن استخدام VALIDATE PASSWORD COMPONENT لاختبار كلمات المرور وتحسين الأمان. يتحقق من قوة كلمة المرور ويسمح للمستخدمين بتعيين كلمات المرور الآمنة بدرجة كافية فقط. هل ترغب في إعداد مكون VALIDATE PASSWORD؟ اضغط على y | Y للحصول على "نعم" ، أي مفتاح آخر لـ "لا": ص

ثم قم بتعيين مستوى سياسة التحقق من صحة كلمة المرور إما عن طريق الإدخال 0, 1 أو 2 اعتمادًا على مدى قوة إنشاء كلمة المرور الخاصة بك لقواعد البيانات الخاصة بك.

انتاج: هناك ثلاثة مستويات من سياسة التحقق من صحة كلمة المرور: الطول المنخفض> = 8 MEDIUM الطول> = 8 ، العددية ، الحالة المختلطة ، والأحرف الخاصة STRONG Length> = 8 ، الرقمية ، الحالة المختلطة ، الأحرف الخاصة وملف القاموس الرجاء إدخال 0 = LOW ، 1 = متوسط ​​و 2 = قوي: 2

بعد ذلك ، سيُطلب منك إدخال كلمة مرور جديدة لمستخدم جذر MySQL. أدخل كلمة مرور مناسبة لجذر MySQL الخاص بك. يمنحك المكون الإضافي VALIDATE PASSWORD القوة المقدرة لكلمة المرور وفقًا لمستوى التحقق من صحة كلمة المرور. صحافة ص للمتابعة مع كلمة المرور التي قدمتها.

انتاج: يرجى تعيين كلمة المرور للجذر هنا. كلمة المرور الجديدة: أعد إدخال كلمة المرور الجديدة: القوة المقدرة لكلمة المرور: 100 هل ترغب في متابعة كلمة المرور المقدمة؟ (اضغط y | Y لـ "نعم" ، أي مفتاح آخر لـ "لا"): ص

صحافة ص بالنسبة لبقية المطالبات ، سيقومون بإزالة بعض المستخدمين المجهولين وقواعد بيانات الاختبار ، وتعطيل تسجيل الدخول إلى الجذر البعيد وإعادة تحميل الإعدادات الجديدة لخادم MySQL. عند الانتهاء ، اختبر قاعدة البيانات الخاصة بك عن طريق تشغيل:

sudo mysql

سيفتح الأمر أعلاه وحدة تحكم MySQL ، والاتصال بقاعدة بيانات MySQL باسم جذر المستعمل. سترى ناتجًا مثل هذا:

انتاج: مرحبًا بك في شاشة MySQL. الأوامر تنتهي بـ ؛ أو \ ز. معرف اتصال MySQL الخاص بك هو إصدار 10 Server: 8.0.20-0ubuntu0.20.04.1 (Ubuntu) حقوق النشر (c) 2000 ، 2020 ، Oracle و / أو الشركات التابعة لها. كل الحقوق محفوظة. Oracle هي علامة تجارية مسجلة لشركة Oracle Corporation و / أو الشركات التابعة لها. قد تكون الأسماء الأخرى علامات تجارية لمالكيها. اكتب "help؛" أو "\ h" للمساعدة. اكتب "\ c" لمسح بيان الإدخال الحالي. mysql>

ربما لاحظت أنك لست بحاجة إلى إدخال كلمة المرور التي قمت بتعيينها لمستخدم جذر MySQL. وذلك لأن طريقة المصادقة الافتراضية لمستخدم جذر MySQL الإداري هي caching_sha2_authentication بدلا من ال mysql_native_password الطريقة التي تستخدم كلمة مرور لتسجيل الدخول.

لذلك بشكل افتراضي ، يمكنك فقط تسجيل الدخول كمستخدم جذر MySQL باستخدام سودو تمكين المستخدمين والتي تعمل بمثابة أمان إضافي لخادم MySQL. لكن مكتبة MySQL PHP لا تدعم caching_sha2_authentication طريقة. لذلك نحن بحاجة لاستخدام mysql_native_password عندما ننشئ مستخدمًا جديدًا لـ Laravel لأنه يستخدم كلمات مرور للاتصال والتفاعل مع قاعدة البيانات.

قم بإنشاء مستخدم MySQL جديد وقاعدة بيانات

من الممارسات الجيدة دائمًا إنشاء مستخدم جديد وقاعدة بيانات خصيصًا لتطبيقك بدلاً من استخدام مستخدم جذر MySQL وقواعد بيانات الاختبار. لذلك سنقوم بإعداد مستخدم MySQL جديد يسمى laravel_user وقاعدة بيانات تسمى ارافيل. إذا كنت قد اتبعت البرنامج التعليمي حتى هذه النقطة ، فيجب أن يكون لديك وحدة تحكم MySQL مفتوحة. لإنشاء المستخدم يسمى laravel_user قم بتشغيل الاستعلام التالي في وحدة تحكم MySQL:

ملحوظة: استبدل ملف اجتاز الاختبار في استعلام MySQL أدناه بكلمة مرور قوية.

إنشاء مستخدم 'laravel_user' @ '٪' معرف بواسطة mysql_native_password بواسطة 'testpass' ؛

بعد ذلك ، قم بإنشاء قاعدة بيانات تسمى ارافيل لتطبيق Laravel الخاص بنا عن طريق تشغيل هذا الاستعلام:

إنشاء قاعدة بيانات Laravel ؛

فقط مستخدم جذر MySQL لديه أذونات لقاعدة البيانات التي تم إنشاؤها حديثًا. امنح جميع الأذونات عبر ارافيل قاعدة البيانات إلى laravel_user عن طريق الركض:

منح كل شيء على laravel. * TO 'laravel_user' @ '٪'؛

لذلك ، لدينا الآن مستخدم MySQL جديد وقاعدة بيانات ، اخرج من وحدة تحكم MySQL عن طريق تشغيل:

خروج؛

اختبر مستخدم MySQL الجديد الخاص بك عن طريق تسجيل الدخول إلى وحدة تحكم MySQL باستخدامه ، للقيام بذلك ، قم بتشغيل هذا الأمر في Terminal:

mysql -u laravel_user -p

لاحظ ال -p ضع علامة في الأمر ، فسيطالبك بكلمة المرور التي استخدمتها أثناء إنشاء ملف laravel_user (اجتاز الاختبار في الاستعلام). بعد تسجيل الدخول إلى وحدة تحكم MySQL باسم laravel_user، تأكد من أن المستخدم لديه حق الوصول إلى ارافيل قاعدة البيانات عن طريق تشغيل:

عرض قواعد البيانات ؛
انتاج: + -------------------- + | قاعدة البيانات | + -------------------- + | ارافيل | | information_schema | + -------------------- + صفان في المجموعة (0.01 ثانية)

الإخراج أعلاه يؤكد أن مستخدم MySQL laravel_user لديه أذونات لقاعدة البيانات ارافيل. اخرج من وحدة تحكم MySQL باستخدام ملف خروج؛ الاستعلام حتى نتمكن من المتابعة لإنشاء تطبيق DemoApp Laravel.

تثبيت Laravel

يستخدم إطار عمل Laravel Composer لتنزيل وإدارة تبعياته. لذلك ، نحتاج إلى تثبيت Composer على جهاز Ubuntu 20.04 قبل أن نتمكن من إنشاء تطبيق Laravel.

قم بتثبيت Composer

Composer هي أداة مدير تبعية لـ PHP ، مما يجعل تثبيت وتحديث أطر عمل PHP والمكتبات أسهل بكثير. سننظر في كيفية تثبيت Composer بسرعة في هذا البرنامج التعليمي حتى نتمكن من استخدامه لتنزيل إطار عمل Laravel وإدارته.

تحتاج إلى تثبيت بعض الحزم الإضافية التي يطلبها Composer لتعمل مثل php-cli لتشغيل نصوص PHP في المحطة و بفك لمساعدة Composer في استخراج الحزم. قم بتثبيتهما عن طريق تشغيل:

sudo apt install php-cli بفك ضغط

ثم لتثبيت Composer عالميًا ، قم بتنزيل نص تثبيت Composer بامتداد لفة وقم بتثبيته باستخدام الأمر التالي:

curl -sS //getcomposer.org/installer | sudo php - --install-dir = / usr / local / bin --filename = الملحن

أخيرًا ، تحقق من تثبيت الملحن بشكل صحيح عن طريق تشغيل:

ملحن
 - / / / _ / (__) __ / / \ ____ / \ ____ / _ / / _ / / _ / .___ / \ ____ / ____ / \ ___ / _ / / _ / إصدار الملحن 1.10.8 2020-06- 24 21:23:30 الاستخدام: الأمر [خيارات] [وسيطات]

يؤكد هذا الإخراج أن Composer يعمل بشكل صحيح على خادم Ubuntu 20.04 الخاص بك ، ويمكنك البدء في استخدامه لتثبيت أطر عمل ومكتبات PHP وإدارتها.

أنشئ تطبيق Laravel

لدينا إلى حد كبير كل ما هو مطلوب لإنشاء تطبيق Laravel على خادم Ubuntu 20.04 باستثناء بعض امتدادات PHP. قم بتثبيت هذه الملحقات المفقودة باستخدام الأمر التالي:

sudo apt تثبيت php-mbstring php-xml php-bcmath php-zip php-json

الآن ، يمكننا تثبيت Laravel وإنشاء تطبيق Laravel جديد بمساعدة Composer. أولاً ، تأكد من أنك في الدليل الرئيسي للمستخدم:

مؤتمر نزع السلاح ~

ثم أنشئ مشروع Laravel جديدًا باستخدام Composer’s إنشاء مشروع يأمر:

الملحن create-project --prefer-dist laravel / laravel LaravelApp

سينشئ الأمر أعلاه مشروعًا جديدًا يسمى LaravelApp وسيعمل أيضًا على تثبيت Laravel Framework وتكوينه نيابة عنك. سترى ناتجًا مشابهًا لهذا:

انتاج: إنشاء مشروع "laravel / laravel" في "./LaravelApp" تثبيت laravel / laravel (v7.12.0) تثبيت laravel / laravel (v7.12.0): تنزيل (100٪) مشروع تم إنشاؤه في / home / ath / LaravelAppphp - r "file_exists ('. env') || نسخة ('. env.example'، '.env')؛" تحميل مستودعات المؤلف بمعلومات الحزمة تحديث التبعيات (بما في ذلك need-dev) عمليات الحزمة: 97 عملية تثبيت ، 0 تحديث ، 0 عمليات إزالة تثبيت voku / portable-ascii (1.5.2): تنزيل (100٪) تثبيت symfony / polyfill-ctype (v1 .17.1): تنزيل (100٪) تثبيت phpoption / phpoption (1.7.4): تنزيل (100٪) تثبيت vlucas / phpdotenv (v4.1.7): تنزيل (100٪) تثبيت symfony / css-selector (v5.1.2) : تحميل (100٪) ....

عند انتهاء التثبيت ، انتقل إلى الدليل الجذر للتطبيق ثم قم بتشغيل ملف Laravel الحرفي أمر للتحقق من تثبيت جميع المكونات بشكل صحيح:

cd LaravelApp / php الحرفي
انتاج: Laravel Framework 7.18.0 الاستخدام: الأمر [الخيارات] [الوسيطات] الخيارات: -h، --help عرض رسالة المساعدة هذه -q، --quiet لا تخرج أي رسالة -V، --version عرض إصدار هذا التطبيق --ansi فرض إخراج ANSI - no-ansi تعطيل إخراج ANSI - n ، - بدون تفاعل لا تسأل أي سؤال تفاعلي - env ​​[= ENV] البيئة التي يجب أن يعمل بها الأمر ضمن -v | vv | vvv، - زيادة الإفراط الإسهاب في الرسائل: 1 للإخراج العادي ، و 2 لمزيد من الإخراج المطول و 3 للتصحيح ...

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

تكوين تطبيق Laravel

توجد ملفات ضبط Laravel في دليل يسمى التكوين داخل الدليل الجذر للتطبيق. بالإضافة إلى ذلك ، عندما قمنا بتثبيت Laravel من خلال Composer ، فقد أنشأ ملف بيئة يسمى ".env" في الدليل الجذر للتطبيق. يتضمن ملف البيئة التكوينات الخاصة بالبيئة ويكون له الأسبقية على الإعدادات الموجودة في ملفات التكوين العادية الموجودة داخل دليل التكوين.

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

سنقوم الآن بتحرير .env ملف لتغيير التكوين وإضافة بيانات اعتماد قاعدة البيانات إليه. افتح الملف باستخدام محرر nano عن طريق تشغيل:

nano .env

هناك العديد من متغيرات التكوين في هذا .env ملف. لسنا بحاجة إلى تغيير كل واحد منهم ، حيث قام Composer بتهيئة معظم الإعدادات تلقائيًا. إذن ، إليك قائمة ببعض متغيرات التكوين الأساسية التي يجب أن تعرفها:

  • اسم التطبيق: اسم التطبيق المستخدم للإعلام والرسائل ، لذلك سنقوم بتعيينه على "LaravelApp".
  • APP_ENV: يستخدم هذا المتغير للإشارة إلى بيئة التطبيق الحالية. يمكن ضبطه على بيئات محلية أو تطويرية أو اختبار أو إنتاج. سنقوم بإعداده لبيئة التطوير في الوقت الحالي.
  • APP_KEY: مفتاح تطبيق فريد يستخدم لإنشاء أملاح وتجزئة لتطبيق الويب. يتم إنشاؤه تلقائيًا عند تثبيت Laravel عبر Composer ، لذلك ليست هناك حاجة لتغيير ذلك.
  • APP_DEBUG: يمكن ضبطها على صواب أو خطأ ، اعتمادًا على ما إذا كنت تريد عرض الأخطاء من جانب العميل. اضبطه على "خطأ" عند الانتقال إلى بيئة الإنتاج.
  • APP_URL: عنوان URL الأساسي أو IP للتطبيق ، قم بتغييره إلى اسم المجال الخاص بك إذا كان لديك واحد لتطبيق Laravel الخاص بك أو احتفظ به دون تغيير في الوقت الحالي.
  • DB_DATABASE: اسم قاعدة البيانات التي ترغب في استخدامها مع تطبيق Laravel. سنستخدم قاعدة بيانات MySQL "laravel" التي أنشأناها أثناء تكوين MySQL.
  • DB_USERNAME: اسم المستخدم للاتصال بقاعدة البيانات. سنستخدم مستخدم MySQL "laravel_user" الذي أنشأناه.
  • DB_PASSWORD: كلمة المرور للاتصال بقاعدة البيانات.
 APP_NAME = LaravelApp APP_ENV = تطوير APP_KEY = base64: Application_unique_key APP_DEBUG = صحيح APP_URL = // domain_or_IP LOG_CHANNEL = مكدس DB_CONNECTION = mysql DB_HOST = 127.0.0.1 DB_PORT = 3306 DB_DATABASE = Laravel DB_USERNAME = laravel_user DB_PASSWORD = اجتاز الاختبار

قم بإجراء تغييرات على .env الملف وفقًا لذلك وعندما تنتهي من التحرير ، احفظ الملف واخرج منه باستخدام CTRL + X ثم اضغط ص واضغط على Enter للتأكيد. الآن ، كل ما تبقى هو تكوين خادم Apache وإنشاء مضيف افتراضي لتطبيق Laravel الخاص بنا.

إعداد خادم الويب Apache

لقد قمنا بتثبيت Laravel في المجلد المحلي من الدليل الرئيسي للمستخدم. بينما يعمل هذا بشكل جيد تمامًا بالنسبة للتنمية المحلية ، فمن المستحسن ممارسة وجود دليل تطبيق الويب في / var / www. سبب عدم تثبيت Laravel فيه / var / www بشكل مباشر لأنه مملوك لـ root ولا يجب استخدام Composer معه سودو.

لذا استخدم ملف م الأمر لنقل مجلد تطبيق Laravel ومحتوياته إليه / var / www:

sudo mv ~ / Laravel / / var / www

دليل LaravelApp مملوك للمستخدم ، لذا لا يزال بإمكانك تحرير الملفات وإجراء تغييرات عليها دون استخدام الامتداد سودو يأمر. لكن خادم الويب Apache يحتاج إلى الوصول إلى مجلدات ذاكرة التخزين المؤقت والتخزين الخاصة بالتطبيق حيث يقوم Laravel بتخزين الملفات التي تم إنشاؤها بواسطة التطبيق فيه. قم بتغيير مالك هذه المجلدات إلى www-data مستخدم باستخدام تشاون يأمر:

sudo chown -R www-data.www-data / var / www / LaravelApp / storage sudo chown -R www-data.www-data / var / www / LaravelApp / bootstrap / cache

بعد تغيير مالك هذه الدلائل ، قم بتمكين Apache's mod_rewrite كما هو مطلوب من قبل Laravel لتحويل عناوين URL بشكل صحيح ليتم تفسيرها من خلال وظيفة التوجيه الخاصة بها htaccess ملف.

إعادة كتابة sudo a2enmod

بعد ذلك ، نحتاج إلى إعداد مضيف افتراضي لتطبيق Laravel. توجد تكوينات المضيف الظاهري في / etc / apache2 / sites-available. سنقوم بتحرير ملف المضيف الافتراضي لنشر تطبيق Laravel. افتح ملف تكوين المضيف الظاهري الافتراضي باستخدام محرر nano:

sudo nano /etc/apache2/sites-available/000-default.conf

قم بتغيير جذر المستند من / var / www / html ل / var / www / LaravelApp / public وأضف المقتطف التالي أسفل سطر DocumentRoot:

 AllowOverride الكل 

لك 000-default.conf يجب أن يبدو مثل هذا الآن مع بعض التعليقات.

 ServerAdmin webmaster @ localhost DocumentRoot / var / www / LaravelApp / public AllowOverride All ErrorLog $ {APACHE_LOG_DIR} /error.log CustomLog $ {APACHE_LOG_DIR} /access.log مجتمعة 

أعد تشغيل خادم الويب Apache عن طريق تشغيل الأمر التالي:

أعد تشغيل sudo systemctl apache2

انتقل الآن إلى متصفحك واكتب عنوان IP لخادم Ubuntu 20.04. سترى صفحة بدء Laravel بدلاً من صفحة الترحيب الافتراضية في Apache.

بافتراض أنك اتبعت هذا الدليل حتى الآن ، يجب أن يكون لديك تطبيق Laravel يعمل بقاعدة بيانات MySQL تسمى ارافيل لذلك. من هذه النقطة ، يمكنك البدء في تطوير تطبيق Laravel الخاص بك بنفسك. لمعرفة المزيد حول إطار عمل Laravel واستخدامه ، تفضل بزيارة صفحة مستندات Laravel.