الفرق بين المراجعتين لصفحة: «Laravel/installation»

من موسوعة حسوب
اقتراح بعض التعديلات.
مراجعة الترجمة
 
(4 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 12: سطر 12:
* ملحق Ctype PHP
* ملحق Ctype PHP
* ملحق JSON PHP
* ملحق JSON PHP
* ملحق BCMath PHP


== تثبيت Laravel ==
== تثبيت Laravel ==
يستخدم إطار العمل [[Laravel]] برمجية Composer لإدارة الاعتماديات. لذا تأكد من تثبيت Composer على حاسوبك، قبل استخدام [[Laravel]].
يستخدم إطار العمل [[Laravel]] برمجية Composer لإدارة التبعيات. لذا تأكد من تثبيت Composer على حاسوبك، قبل استخدام [[Laravel]].


=== باستخدام مُثبِّت [[Laravel]] ===
=== باستخدام مُثبِّت [[Laravel]] ===
سطر 26: سطر 27:
·        في توزيعات لينكس: في المسار <code>‎$HOME/.config/composer/vendor/bin</code>
·        في توزيعات لينكس: في المسار <code>‎$HOME/.config/composer/vendor/bin</code>


بعد تثبيته، سيُنشِئ الأمر <code>laravel new</code> مجلدًا يحتوي على نسخة جديدة من إطار [[Laravel]]. على سبيل المثال ، سيُنشِئ الأمر <code>laravel new blog</code> مجلدًا جديدًا باسم blog يحتوي على تثبيت [[Laravel]] جديد مع جميع اعتماديات [[Laravel]] اللازمة.<syntaxhighlight lang="text">
بعد تثبيته، سيُنشِئ الأمر <code>laravel new</code> مجلدًا يحتوي على نسخة جديدة من إطار [[Laravel]]. على سبيل المثال، سيُنشِئ الأمر <code>laravel new blog</code> مجلدًا جديدًا باسم blog يحتوي على تثبيت [[Laravel]] جديد مع جميع تبعيات [[Laravel]] اللازمة.<syntaxhighlight lang="text">
laravel new blog
laravel new blog
</syntaxhighlight>
</syntaxhighlight>
سطر 36: سطر 37:


=== باستخدام خادوم التطوير المحلي ===
=== باستخدام خادوم التطوير المحلي ===
إذا كنت قد قمت بتثبيت [[PHP]] محليًا وترغب في استخدام خادوم التطوير الخاص بلغة PHP لتخديم تطبيقك، فيمكنك استخدام الأمر <code>Artisan serve</code>. سيبدأ هذا الأمر خادوم تطوير على<code><nowiki>http://localhost:8000</nowiki></code>:<syntaxhighlight lang="text">
إذا كنت قد قمت بتثبيت [[PHP]] محليًا وترغب في استخدام خادوم التطوير الخاص بلغة PHP لخدمة تطبيقك، فيمكنك استخدام الأمر <code>Artisan serve</code>. سيبدأ هذا الأمر خادوم تطوير على<code><nowiki>http://localhost:8000</nowiki></code>:<syntaxhighlight lang="text">
php artisan serve
php artisan serve
</syntaxhighlight>بالطبع، تتوفر خيارات التطوير المحلية الأكثر قوة من خلال [[Laravel/homestead|Homestead]] و [[Laravel/valet|Valet]].
</syntaxhighlight>بالطبع، تتوفر خيارات التطوير المحلية الأكثر قوة من خلال [[Laravel/homestead|Homestead]] و [[Laravel/valet|Valet]].
سطر 46: سطر 47:


=== ملفات الضبط ===
=== ملفات الضبط ===
تُخزَّن كافة ملفات الضبط الخاصة بإطار [[Laravel]] في مجلد <code>config.</code> كل خيار من تلك الخيارات موثقٌ توثيقًا كاملًا، لذلك لا تتردد في إلقاء نظرة عل الملفات والتعرف على الخيارات المتاحة لك.
تُخزَّن كافة ملفات الضبط الخاصة بإطار [[Laravel]] في مجلد <code>config.</code> كل خيار من تلك الخيارات موثقٌ توثيقًا كاملًا، لذلك لا تتردد في إلقاء نظرة على الملفات والتعرف على الخيارات المتاحة لك.


=== أذونات المجلد ===
=== أذونات المجلد ===
سطر 72: سطر 73:


إذا كان ملف <code>‎.htaccess</code> الذي يأتي مع [[Laravel]] لا يعمل مع تثبيت [[Apache]] عندك، فجرّب هذا الملف البديل:<syntaxhighlight lang="text">
إذا كان ملف <code>‎.htaccess</code> الذي يأتي مع [[Laravel]] لا يعمل مع تثبيت [[Apache]] عندك، فجرّب هذا الملف البديل:<syntaxhighlight lang="text">
Options+FollowSymLinks
Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteEngine On
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteRule ^ index.php [L]


</syntaxhighlight>
</syntaxhighlight>


==== خادوم  <nowiki/>[[Nginx]] ====
==== خادوم  <nowiki/>[[Nginx]] ====
إذا كنت تستخدم خادوم [[Nginx]]، فإن تعليمة الضبط الآتية في ملف ضبط موقعك سيوجه جميع الطلبات
إذا كنت تستخدم خادوم [[Nginx]]، فإن تعليمة الضبط الآتية في ملف ضبط موقعك سيوجه جميع الطلبات إلى وحدة التحكم الأمامية <code>index.php</code>: <syntaxhighlight lang="php">
 
إلى وحدة التحكم الأمامية <code>index.php</code>:<syntaxhighlight lang="php">
location / {
location / {
     try_files $uri $uri/ /index.php?$query_string;
     try_files $uri $uri/ /index.php?$query_string;
سطر 91: سطر 93:


== مصادر ==
== مصادر ==
* [https://laravel.com/docs/5.6/installation صفحة Installation في توثيق Laravel الرسمي.]
* [https://laravel.com/docs/5.7/installation صفحة Installation في توثيق Laravel الرسمي.]
[[تصنيف:Laravel|{{SUBPAGENAME}}]]
[[تصنيف:Laravel|{{SUBPAGENAME}}]]
[[تصنيف:Laravel Getting started|{{SUBPAGENAME}}]]
[[تصنيف:Laravel Getting started|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 05:22، 3 أغسطس 2020

متطلبات الخادوم

يتطلب إطار Laravel بعض متطلبات النظام. بالطبع ، يتم استيفاء جميع هذه المتطلبات من خلال النظام الوهمي لبيئة -Laravel (باسم Homestead)- لذلك يوصى باستخدام بيئة Homestead بيئة تطوير Laravel المحلية الخاصة بك.

ومع ذلك، إذا لم تكن بيئة Homestead متاحةً لك أو لم ترغب في استخدامها، فستحتاج إلى التأكد من أن الخادوم يلبي المتطلبات التالية:

  • PHP >= 7.1.3
  • ملحق OpenSSL PHP
  • ملحق PDO PHP
  • ملحق Mbstring PHP
  • ملحق Tokenizer PHP
  • ملحق XML PHP
  • ملحق Ctype PHP
  • ملحق JSON PHP
  • ملحق BCMath PHP

تثبيت Laravel

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

باستخدام مُثبِّت Laravel

حمّل أوّلًا مثبّت Laravel باستخدام Composer :

composer global require "laravel/installer"

احرص على إضافة مجلد vendor/bin الخاصة ببرنامج Composer إلى متغير البيئة ‎$PATH بحيث يمكن تحديد موقع الملف القابل للتنفيذ لإطار عمل Laravel بواسطة النظام الخاص بك. يوجد هذا المجلد في مواقع مختلفة اعتمادًا على نظام التشغيل الخاص بك؛ ومع ذلك، من الشائع أن يوجد في المسارات الآتية:

·        في نظام ماك: في المسار ‎$HOME/.composer/vendor/bin

·        في توزيعات لينكس: في المسار ‎$HOME/.config/composer/vendor/bin

بعد تثبيته، سيُنشِئ الأمر laravel new مجلدًا يحتوي على نسخة جديدة من إطار Laravel. على سبيل المثال، سيُنشِئ الأمر laravel new blog مجلدًا جديدًا باسم blog يحتوي على تثبيت Laravel جديد مع جميع تبعيات Laravel اللازمة.

laravel new blog

باستخدام Composer

بدلا عن ذلك، يمكنك أيضًا تثبيت Laravel بتنفيذ الأمر create-project الخاص ببرمجية Composer في الطرفية على جهازك:

composer create-project --prefer-dist laravel/laravel blog

باستخدام خادوم التطوير المحلي

إذا كنت قد قمت بتثبيت PHP محليًا وترغب في استخدام خادوم التطوير الخاص بلغة PHP لخدمة تطبيقك، فيمكنك استخدام الأمر Artisan serve. سيبدأ هذا الأمر خادوم تطوير علىhttp://localhost:8000:

php artisan serve

بالطبع، تتوفر خيارات التطوير المحلية الأكثر قوة من خلال Homestead و Valet.

الضبط

المجلد العام

بعد تثبيت Laravel ، يجب عليك ضبط جذر لخادوم الويب الخاص بك ليكون المجلد public. يعمل الملف index.php  في هذا المسار بصفته وحدة تحكم أمامية لجميع طلبات HTTP التي تدخل التطبيق الخاص بك.

ملفات الضبط

تُخزَّن كافة ملفات الضبط الخاصة بإطار Laravel في مجلد config. كل خيار من تلك الخيارات موثقٌ توثيقًا كاملًا، لذلك لا تتردد في إلقاء نظرة على الملفات والتعرف على الخيارات المتاحة لك.

أذونات المجلد

بعد تثبيت Laravel، قد تحتاج إلى ضبط بعض الأذونات (permissions). يجب أن تكون المجلدات داخل مجلد storage ومجلد bootstrap/cache قابلةً للكتابة بواسطة خادوم الويب أو فلن يعمل Laravel. إذا كنت تستخدم بيئة عمل Homestead، فستكون الأذونات المطلوبة مضبوطةً مسبقًا.

مفتاح التطبيق

أول ما عليك فعله بعد تثبيت Laravel هو ضبط مفتاح التطبيق الخاص بك إلى سلسلة نصية عشوائية. إذا قمت بتثبيت Laravel باستخدام Composer أو مثبت Laravel، فقد ضُبِطَ هذا المفتاح لك باستخدام الأمر php artisan key:generate.

يجب أن تكون هذه السلسلة بطول 32 محرفًا عادةً. يمكن تعيين المفتاح في ملف البيئة ‎.env. إذا لم تُعِد تسمية الملف ‎.env.example إلى ‎.env، فيجب عليك القيام بذلك الآن. إذا لم يُضبَط مفتاح التطبيق، فلن تكون جلسات المستخدم الخاصة بك وغيرها من البيانات المشفرة آمنة!

الضبط الإضافي

لا يحتاج Laravel إلى أي ضبط آخر مبدئيًا. يمكنك البدء بالتطوير فورًا. ومع ذلك، قد ترغب في مراجعة الملف config/app.php وتوثيقه. هذا الملف يحتوي على العديد من الخيارات مثل المنطقة الزمنية (timezone) والمحليّة (locale ) والتي قد ترغب في تغييرها وفقًا لتطبيقك.

قد ترغب أيضًا في تكوين بعض المكونات الإضافية في Laravel، مثل:

  • ذاكرة التخزين المؤقتة
  • قاعدة البيانات
  • الجلسة

ضبط خادوم الويب

عناوين URL جذابة

خادوم Apache

يتضمن Laravel الملف public/.htaccess الذي يُستخدم لتوفير عناوين URL دون وحدة التحكم index.php الأمامية في المسارات. قبل تخديم  Laravel مع Apache، تأكد من تفعيل الوحدة mod_rewrite بحيث تُنفَّذ محتويات ملف ‎.htaccess بواسطة الخادوم.

إذا كان ملف ‎.htaccess الذي يأتي مع Laravel لا يعمل مع تثبيت Apache عندك، فجرّب هذا الملف البديل:

Options +FollowSymLinks -Indexes
RewriteEngine On

RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

خادوم  Nginx

إذا كنت تستخدم خادوم Nginx، فإن تعليمة الضبط الآتية في ملف ضبط موقعك سيوجه جميع الطلبات إلى وحدة التحكم الأمامية index.php:

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

بالطبع، عند استخدام Homestead أو Valet، سيتم ضبط عناوين URL جذابة تلقائيًا.

مصادر