
مقدمة
Zend Framework/Laminas هو إطار عمل PHP مفتوح المصدر شائع الاستخدام مصمم لجعل بناء تطبيقات الويب القوية وعالية الأداء أبسط وأكثر كفاءة. مع هندسته المعيارية وباستخدام مبادئ البرمجة الكائنية التوجه، يوفر Zend Framework للمطورين الأدوات اللازمة لإنشاء تطبيقات قابلة للتطوير وآمنة وعالية الجودة. في هذا الدليل الشامل، سنغطي كيفية تثبيت Zend Framework على نظام لينكس، لضمان حصولك على كل ما تحتاجه للبدء في تطوير PHP.
جدول المحتويات
- المتطلبات الأساسية
- تثبيت البرامج المطلوبة
- PHP
- Apache
- MySQL
- Composer
- إعداد البيئة
- تثبيت Zend Framework
- تكوين Apache
- إنشاء مشروع Zend Framework جديد
- تشغيل أول تطبيق Zend Framework الخاص بك
- المشكلات الشائعة واستكشاف الأخطاء وإصلاحها
- موارد إضافية
1. المتطلبات الأساسية
قبل الغوص في عملية التثبيت، تأكد من أن لديك نظام لينكس مع حساب مستخدم لديه امتيازات sudo. ستحتاج أيضًا إلى اتصال إنترنت نشط لتنزيل الحزم والمكونات الإضافية اللازمة.
متطلبات النظام الموصى بها
- توزيعة لينكس: أوبونتو، ديبيان، سنتوس، فيدورا أو أي توزيعة رئيسية أخرى.
- إصدار PHP 7.4 أو أحدث.
- Apache HTTP Server 2.4 أو أحدث.
- MySQL الإصدار 5.7 أو أحدث (اختياري، للتطبيقات القائمة على قواعد البيانات).
- Composer (مدير الحزم لـ PHP).
2. تثبيت البرامج المطلوبة
تثبيت PHP
لتثبيت PHP، تحتاج إلى تحديث فهرس الحزم الخاص بك وبعد ذلك تثبيت PHP جنبًا إلى جنب مع بعض الوحدات النمطية.
على أوبونتو/ديبيان
$ sudo apt update
$ sudo apt install php php-cli php-fpm php-mysql php-json php-curl php-mbstring php-xml php-zip -y
على سنتوس/فيدورا
$ sudo yum install epel-release -y
$ sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
$ sudo yum install yum-utils -y
$ sudo yum-config-manager --enable remi-php74
$ sudo yum install php php-cli php-fpm php-mysql php-json php-curl php-mbstring php-xml php-zip -y
تحقق من التثبيت عن طريق التحقق من إصدار PHP:
$ php -v
تثبيت Apache
Apache هو خادم ويب واسع الاستخدام، ويمكن تثبيته بسهولة باستخدام مدير الحزم الخاص بتوزيعة لينكس.
على أوبونتو/ديبيان
$ sudo apt update
$ sudo apt install apache2 -y
على سنتوس/فيدورا
$ sudo yum install httpd -y
قم بتشغيل Apache وتمكينه ليعمل عند بدء التشغيل:
على أوبونتو/ديبيان
$ sudo systemctl start apache2
$ sudo systemctl enable apache2
على سنتوس/فيدورا
$ sudo systemctl start httpd
$ sudo systemctl enable httpd
تحقق من التثبيت عن طريق فتح متصفح الويب وتصفح http://localhost
. يجب أن ترى صفحة الترحيب الافتراضية لـ Apache.
تثبيت MySQL
إذا كان تطبيقك يتطلب قاعدة بيانات، يمكنك تثبيت MySQL أو MariaDB. هنا، سنستخدم MySQL.
على أوبونتو/ديبيان
$ sudo apt update
$ sudo apt install mysql-server -y
على سنتوس/فيدورا
$ sudo yum install mysql-server -y
قم بتشغيل MySQL وتمكينه ليعمل عند بدء التشغيل:
على أوبونتو/ديبيان
$ sudo systemctl start mysql
$ sudo systemctl enable mysql
على سنتوس/فيدورا
$ sudo systemctl start mysqld
$ sudo systemctl enable mysqld
قم بتأمين تثبيت MySQL:
$ sudo mysql_secure_installation
اتبع المطالبات لإعداد كلمة مرور جذر وتأمين التثبيت.
تثبيت Composer
Composer هو مدير حزم لـ PHP سيساعدك على إدارة مكتبات مشروعك والمكونات الإضافية.
على أوبونتو/ديبيان وسنتوس/فيدورا
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('SHA384', 'composer-setup.php') === file_get_contents('https://composer.github.io/installer.sig')) { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$ php composer-setup.php
$ sudo mv composer.phar /usr/local/bin/composer
تحقق من التثبيت عن طريق التحقق من إصدار Composer:
$ composer --version
3. إعداد البيئة
قبل تثبيت Zend Framework، من المهم التأكد من أن بيئة PHP الخاصة بك معدة بشكل صحيح. ويشمل ذلك إعداد وحدات PHP المناسبة وتكوين إعدادات PHP.
تكوين PHP
قم بتحرير ملف تكوين PHP (php.ini
):
على أوبونتو/ديبيان
$ sudo nano /etc/php/7.4/apache2/php.ini
على سنتوس/فيدورا
$ sudo nano /etc/php.ini
تأكد من تكوين الإعدادات التالية بشكل صحيح:
memory_limit = 256M
post_max_size = 50M
upload_max_filesize = 50M
max_execution_time = 300
احفظ واغلق المحرر، ثم أعد تشغيل Apache لتطبيق التغييرات:
على أوبونتو/ديبيان
$ sudo systemctl restart apache2
على سنتوس/فيدورا
$ sudo systemctl restart httpd
4. تثبيت Zend Framework
مع تثبيت Composer، يمكنك الآن تثبيت Zend Framework. أصبح Zend Framework الآن جزءًا من مشروع Laminas، لذلك ستقوم بتثبيت Laminas بدلاً من ذلك.
تثبيت Laminas عبر Composer
أولاً، انتقل إلى المجلد الذي تريد إنشاء مشروع Zend Framework (Laminas) الخاص بك فيه:
$ cd /var/www/html
استخدم Composer لإنشاء مشروع Laminas جديد:
$ composer create-project laminas/laminas-mvc-skeleton my-zend-app
ستقوم هذه الأمر بتنزيل تطبيق Laminas MVC Skeleton وتثبيت جميع المكونات الإضافية اللازمة. بمجرد اكتمال التثبيت، ستحصل على إعداد تطبيق Laminas أساسي في مجلد my-zend-app
.
5. تكوين Apache
لتقديم تطبيق Laminas الخاص بك باستخدام Apache، تحتاج إلى تكوين مضيف افتراضي.
إنشاء مضيف افتراضي
قم بإنشاء ملف تكوين Apache جديد لتطبيقك:
على أوبونتو/ديبيان
$ sudo nano /etc/apache2/sites-available/my-zend-app.conf
على سنتوس/فيدورا
$ sudo nano /etc/httpd/conf.d/my-zend-app.conf
أضف التكوين التالي إلى الملف:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/my-zend-app/public
ServerName my-zend-app.local
<Directory /var/www/html/my-zend-app/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/my-zend-app_error.log
CustomLog ${APACHE_LOG_DIR}/my-zend-app_access.log combined
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>
</VirtualHost>
احفظ وأغلق الملف.
تفعيل المضيف الافتراضي
على أوبونتو/ديبيان
$ sudo a2ensite my-zend-app
$ sudo systemctl reload apache2
على سنتوس/فيدورا
$ sudo systemctl restart httpd
تعديل ملف Hosts
للوصول إلى تطبيقك عبر my-zend-app.local
، تحتاج إلى إضافة إدخال إلى ملف /etc/hosts
الخاص بك:
$ sudo nano /etc/hosts
أضف السطر التالي:
127.0.0.1 my-zend-app.local
احفظ وأغلق الملف.
6. إنشاء مشروع Zend Framework جديد
الآن بعد إعداد بيئتك وتكوين Apache، يمكنك البدء في إنشاء مشروع Zend Framework الخاص بك. يأتي تطبيق Laminas MVC Skeleton مع إعداد أساسي يمكنك توسيعه وتخصيصه.
إنشاء واجهات التحكم
تكون واجهات التحكم مسؤولة عن التعامل مع إدخالات المستخدم وإرجاع الاستجابات. لإنشاء واجهة تحكم جديدة، استخدم أداة Laminas CLI:
$ cd /var/www/html/my-zend-app
$ composer require laminas/laminas-cli
$ ./vendor/bin/laminas mvc:controller MyController
ستنشئ هذه الأمر واجهة تحكم جديدة تسمى MyController
. يمكنك العثور عليها في المجلد module/Application/src/Controller
.
إنشاء المناظر
يتم استخدام المناظر لإنشاء الإخراج المرسل إلى متصفح المستخدم. قم بإنشاء سكريبت منظر جديد لإجراء واجهة التحكم الخاصة بك عن طريق إنشاء ملف جديد:
$ nano module/Application/view/application/my/index.phtml
أضف المحتوى التالي إلى هذا الملف:
<h1>مرحبًا ، Zend Framework!</h1>
<p>مرحبًا بك في تطبيق Laminas الأول الخاص بك.</p>
تكوين المسارات
تحدد المسارات عناوين URL التي يمكن لتطبيقك الاستجابة لها. افتح ملف module/Application/config/module.config.php
وأضف مسارًا جديدًا لواجهة التحكم الخاصة بك:
'router' => [
'routes' => [
'my' => [
'type' => Segment::class,
'options' => [
'route' => '/my[/:action]',
'defaults' => [
'controller' => Controller\MyController::class,
'action' => 'index',
],
],
],
],
],
احفظ وأغلق الملف.
7. تشغيل أول تطبيق Zend Framework الخاص بك
الآن بعد إنشاء واجهة تحكم، ومنظر، وتكوين مسار، يمكنك تشغيل تطبيقك والتحقق من أن كل شيء يعمل بشكل صحيح.
تشغيل Apache
تأكد من تشغيل Apache:
على أوبونتو/ديبيان
$ sudo systemctl start apache2
على سنتوس/فيدورا
$ sudo systemctl start httpd
الوصول إلى تطبيقك
افتح متصفح الويب الخاص بك وتصفح http://my-zend-app.local/my/index
. يجب أن ترى رسالة الترحيب التي أضفتها في المنظر الخاص بك.
8. المشكلات الشائعة واستكشاف الأخطاء وإصلاحها
مشاكل اتصال قاعدة البيانات
إذا كان تطبيقك يتطلب اتصال قاعدة بيانات وواجهت مشاكل، تحقق من إعدادات اتصال قاعدة البيانات في ملف التكوين. تأكد من صحة اسم المستخدم وكلمة المرور واسم قاعدة البيانات.
أخطاء واجهة التحكم أو المنظر
إذا واجهت أخطاء مع واجهة التحكم أو المنظر الخاص بك، تحقق من سجل أخطاء Apache لمزيد من التفاصيل. يمكنك العثور على سجلات الأخطاء في:
- أوبونتو/ديبيان:
/var/log/apache2/error.log
- سنتوس/فيدورا:
/var/log/httpd/error_log
مشاكل تحميل المكونات الإضافية
إذا واجهت مشاكل في تحميل المكونات الإضافية باستخدام Composer، تأكد من أن لديك اتصال إنترنت نشط وأن Composer معد بشكل صحيح. يمكنك محاولة تحديث المكونات الإضافية الخاصة بك باستخدام الأمر التالي:
$ composer update
مشاكل الأذونات
إذا واجهت مشاكل في الأذونات عند الوصول إلى ملفات أو مجلدات تطبيقك، تأكد من أن مستخدم Apache لديه الأذونات المناسبة. بالنسبة لمعظم التوزيعات، يكون مستخدم Apache هو www-data
على أوبونتو/ديبيان وapache
على سنتوس/فيدورا. يمكنك ضبط الأذونات باستخدام الأوامر التالية:
على أوبونتو/ديبيان
$ sudo chown -R www-data:www-data /var/www/html/my-zend-app
$ sudo chmod -R 755 /var/www/html/my-zend-app
على سنتوس/فيدورا
$ sudo chown -R apache:apache /var/www/html/my-zend-app
$ sudo chmod -R 755 /var/www/html/my-zend-app
9. موارد إضافية
إذا كنت بحاجة إلى مزيد من المعلومات أو المساعدة في استخدام Zend Framework (Laminas)، يمكنك الرجوع إلى الموارد التالية:
الخلاصة
يجب أن يوفر لك هذا الدليل الشامل أساسًا قويًا لتثبيت وتكوين Zend Framework (Laminas) على نظام لينكس. من خلال اتباع هذه الخطوات، يجب أن تكون قادرًا على إعداد بيئة عمل، وإنشاء تطبيق Laminas الأول الخاص بك، ومعالجة المشكلات الشائعة التي قد تواجهها.
تذكر، أن تطوير برامج باستخدام إطار عمل قوي مثل Zend Framework يتطلب الممارسة والتعلم المستمر. استكشف التوثيق الشامل والموارد المجتمعية المتاحة لتعميق فهمك وتحسين مهاراتك. تمنياتي لك بالتوفيق في البرمجة!