في هذا الدليل، سنوضح لك كيفية بناء متجر إلكتروني متعدد اللغات ويدعم اللغة العربية باستخدام أحدث إصدار من نظام ماجنتو 2، وهو حتى كتابة هذه الأسطر إصدار 2.4.5. يُعَد ماجنتو Magento منصة تجارة إلكترونية مفتوحة المصدر، مشهورةً للغاية، مكتوبة بلغة PHP، وتديرها شركة Adobe Inc، فهي نظام مرن للغاية وتحتوي على مجموعة كبيرة ومتنوعة من الميزات التي تمكنك من بناء متجر على الإنترنت.
وتقدم شركة أدوبي إصدارين من هذا النظام نذكرهما في الآتي:
- الإصدار المجتمعي Community: وتقدم شركة أدوبي هذا الإصدار تحت اسم Magento Open Source، وهي نسخة مجانية ومصممة أساسًا للأفراد و/ أو الشركات الصغيرة.
- الإصدار المؤسسي Enterprise: وتقدم شركة أدوبي هذا الإصدار تحت اسم Magento Commerce Cloud، وهي نسخة مدفوعة ومصممة أساسًا للشركات المتوسطة والكبيرة.
ماذا ستتعلم؟
سنبني متجرًا إلكترونيًا متعدد اللغات ويدعم اللغة العربية، وسنعرض في هذا المتجر منتجات خاصة بمفروشات الأَسِرَّة، لذلك أُعِدَّ هذا الدليل التعليمي المكون من 8 دروس لأي شخص لديه معرفة أساسية بـ HTML و CSS ولديه رغبة في تطوير المتاجر الإلكترونية والتي إن كنت على غير دراية بها، فننصحك بالاطلاع على مسار أساسيات تطوير الويب من دورة تطوير واجهات المستخدم المقدمة من أكاديمية حسوب لتتعلم أساسيات كل من HTML و CSS وكيفية التعامل بها للحصول على واجهة مواقع إلكترونية مناسبة.
سيعلمك هذا الدليل أساسيات نظام ماجنتو 2 التي يمكنك من خلالها إنشاء متجر إلكتروني بسهولة، وبعد الإنتهاء من هذا الدليل ستجد نفسك على مستوى معتدل من الخبرة في تطوير المتاجر الإلكترونية باستخدام نظام ماجنتو Magento 2.
ماذا ستحتاج؟
يجب تثبيت نظام ماجنتو على خادم ويب، إما على بيئة استضافة محلية تكون على حاسوبك، أو خادم محلي، وذلك لأغراض الاختبار الخاصة ببناء المتجر، أو بيئة استضافة عامة من أحد مزودي خدمات الاستضافة وشراء اسم نطاق لجعل متجرك الإلكتروني متاحًا لبقية العالم؛ كما أنك ستحتاج مصادر لصور منتجاتك وأدوات لتعديل هذه الصور لتتناسب مع متجرك.
1. بيئة الاستضافة المحلية
سوف تحتاج إلى خادم محلي يعمل بنظام تشغيل لينكس أو ويندوز، وفي حالة عمل الخادم بنظام التشغيل لينكس، سوف تحتاج إلى تثبيت الأدوات التالية:
- خادم Apache أو خادم NGinx
- حزمة PHP والإضافات المطلوبة لتثبيت ماجنتو.
- خادم قاعدة البيانات MySQL
- حزمة elasticsearch أو حزمة Opensearch
أما في حالة عمل الخام المحلي بنظام ويندوز، فسوف تحتاج إلى تثبيت الأدوات التالية:
- خادم XAMPP
- حزمة elasticsearch
2. بيئة الاستضافة العامة
سوف تحتاج إلى شراء اسم نطاق يعكس علامتك التجارية، وخادم استضافة من نوع VPS يعمل بأحد توزيعات نظام التشغيل لينكس التالية:
- RedHat Enterprise Linux
- CentOS
- Ubuntu
- Debian
ونستنتج من ذلك أن نظام ماجنتو لا يدعم نظام التشغيل Microsoft Windows ونظام التشغيل macOS، أما بالنسبة للأدوات التي ستحتاج إلى تثبيتها على خادم الاستضافة العامة، فهي نفس الأدوات التي ذكرناها في بيئة الاستضافة المحلية.
3. الحصول على نظام ماجنتو 2
منذ أن استحوذت شركة أدوبي على نظام ماجنتو في شهر مايو من عام 2018، لم يَعُد الحصول على النظام بضغطة زر كما كان السابق، فقد بات من الضروري تنفيذ الإجراءات التالية:
- إنشاء حساب على متجر ماجنتو للحصول على مفتاح الوصول العام والخاص حتى تتمكن من تحميل النظام على الخادم.
- تثبيت أداة Composer لتحميل نظام ماجنتو، أو الحصول عليه من مستودع Github.
- استخدام موجه الأوامر لكتابة أوامر التحميل والتثبيت للنظام.
- التأكد من صحة عملية التثبيت، وذلك بفتح الواجهة الأمامية والخلفية دون مواجهة أي مشاكل.
تثبيت ماجنتو 2.4.5 على نظام التشغيل Ubuntu
يفترض هذا الدليل أن لديك على الأقل معرفةً أساسيةً بنظام Linux والتي إن لم تكن لديك بعد، فيمكنك أخذها من مسار أنظمة التشغيل ونظام لينكس لدورة علوم الحاسوب المقدمة من أكاديمية حسوب. يتطلب الدليل أيضًا معرفةً بكيفية استخدام أوامر shell، لكن في حالة كنت أحد الوافدين الجدد على النظام، فلا تقلق، فقد قسمت لك عملية التثبيت هذه إلى أجزاء بسيطة لتتمكن من استيعاب جميع إجراءاتها، وستكون خطواتنا في عملية التثبيت كما يلي:
- تثبيت Apache2
- تثبيت MySQL وإنشاء قاعدة بيانات لمتجرنا
- تثبيت PHP والإضافات المطلوبة
- تثبيت وتكوين Elasticsearch
- تثبيت Composer
- تنزيل وتثبيت ماجنتو 2.4.5
- تنزيل عينة من البيانات (خطوة اختيارية)
لكن قبل أن نبدأ في عملية التثبيت، أريد منك الاطلاع على المتطلبات التي يجب توافرها لكل خطوة من الخطوات السابقة، وذلك حتى تتمكن من تثبيت ماجنتو بنجاح، فعلى سبيل المثال، يتطلب إصدار ماجنتو 2.4.5 أن يكون لديك إصدار PHP 8.1؛ أما إصدار ماجنتو 2.4.3 فيتطلب أن يكون لديك إصدار PHP 7.4، فإن حاولت تثبيت إصدار ماجنتو 2.4.3 وأنت لديك إصدار PHP 8.1، فستفشل عملية التثبيت.
الخطوة الأولى: تثبيت Apache2
يتوفر خادم Apache في مستودعات برامج Ubuntu الافتراضية، ولهذا السبب سنبدأ بتحديث فهرس الحزمة المحلي للحصول على أحدث التغييرات، لذا اتصل فقط بالخادم المحلي أو العام الخاص بك باستخدام بروتوكول ssh مع صلاحية الوصول root، أو افتح موجه الأوامر Terminal من على سطح المكتب ثم نفذ الأمرين التاليين:
sudo apt update
ثم ندخل الأمر:
sudo apt upgrade
بعد ذلك، نثبت حزمة apache2.
sudo apt install apache2
سوف يعرض لك النظام رسالةً يخيرك فيها بين متابعة التثبيت أو إلغاء التثبيت، لذا انقر على مفتاح Y، ثم انقر على مفتاح Enter لمتابعة عملية التثبيت.
وبمجرد انتهاء التثبيت، يمكنك التحقق من إصدار Apache المثبت بالأمر التالي:
sudo apache2ctl -v
رائع، بهذا يكون قد أصبح لدينا إصدار خادم Apache متوافق مع متطلبات نظام Magento 2.4.5، والآن دعنا نتحقق مما إذا كان خادم Apache2 قد ثُبت بطريقة صحيحة، فقط أدخل عنوان IP هذا في متصفحك 127.0.0.1. فإذا كانت النتيجة هي الصفحة الافتراضية لخادم أباتشي كما بالصورة التالية، فهذا معناه أن كل شيء على ما يرام.
ولتمكين بدء تشغيل خادم Apache تلقائيًا في كل مرة يُعاد فيها تشغيل الخادم الخاص بك، استخدم هذا الأمر:
systemctl is-enabled apache2
الخطوة الثانية: تثبيت MySQL وإنشاء قاعدة بيانات لمتجرنا
الآن نثبت خادم قواعد البيانات MySQL باستخدام الأمر التالي:
sudo apt install mysql-server
انقر على مفتاح Y، ثم انقر على مفتاح Enter لمتابعة عملية التثبيت.
وبمجرد انتهاء التثبيت، يمكنك التحقق من إصدار MySQL المثبت بالأمر التالي:
mysql -V
بهذا يكون قد أصبح لدينا إصدار خادم MySQL متوافق مع متطلبات نظام Magento 2.4.5، والآن يجب علينا تأمين خادم MySQL بإزالة بعض الإعدادات الافتراضية غير الآمنة ومنع الوصول إلى نظام قاعدة البيانات، وذلك باتباع الآتي:
- أولاً: نسجل الدخول إلى خادم MySQL من خلال الأمر التالي:
sudo mysql
- ثانيًا: تعيين كلمة مرور قوية للمستخدم root الخاص بخادم MySQL، لأن الوضع الافتراضي يكون المستخدم root بدون كلمة مرور وهذا أمر غير مقبول بالطبع، اكتب الأمر التالي ثم انقر على مفتاح Enter.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'اكتب هنا كلمة مرورك';
- ثالثًا: تسجيل الخروج من خادم MySQL.
exit
- رابعًا: تأمين الوصول إلى خادم MySQL، وذلك من خلال كتابة الأمر التالي الذي سيطلب منك إدخال كلمة مرور المستخدم root الخاصة بالنظام، ثم كلمة مرور المستخدم root الخاصة بخادم MySQL:
sudo mysql_secure_installation
الآن ستظهر لك عدة رسائل تطلب منك اتخاذ إجراء معين، فالرسالة الأولى تطلب منك إعداد مكون VALIDATE PASSWORD لتحديد قوة كلمة المرور المراد استخدامها.
أما الرسالة الثانية فتطلب منك تعيين كلمة مرور للمستخدم root الخاص بخادم MySQL، ويمكنك تجاوز هذه الرسالة لأننا قد عَينَّا كلمة المرور فعلًا.
أما الرسالة الثالثة فتطلب منك إزالة المستخدم المجهول، فافتراضيًا يكون لتثبيت MySQL مستخدم مجهول يسمح لأي شخص بتسجيل الدخول إلى MySQL دون الحاجة إلى حساب مستخدم، وهو أمر مرفوض بالطبع.
بينما تطلب منك الرسالة الرابعة عدم السماح بتسجيل دخول المستخدم root إلى خادم MySQL عن بعد.
في حين أن الرسالة الخامسة تطلب منك إزالة قاعدة بيانات باسم test والوصول إليها.
أما الرسالة الأخيرة فتطلب منك إعادة تحميل جداول الامتيازات لتنفيذ التغييرات التي أجريناها.
- خامسًا، إنشاء مستخدم MySQL جديد، إذ من المستحسن عدم استعمال المستخدم root، لذلك سننشئ مستخدم جديد له صلاحيات root كما يُفضل أن تكون له كلمة مرور جديدة.
في البداية سجل الدخول إلى خادم MySQL من خلال المستخدم root وكلمة المرور الخاصة به بكتابة الأمر التالي:
mysql -u root -p
الآن اكتب الأمر التالي لإنشاء المستخدم الجديد وكلمة المرور الخاصة به:
CREATE USER 'أكتب هنا اسم المستخدم'@'localhost' IDENTIFIED BY 'أكتب هنا كلمة المرور';
ثم اكتب الأمر التالي لتأكيد كلمة المرور للمستخدم الجديد:
ALTER USER 'أكتب هنا اسم المستخدم'@'localhost' IDENTIFIED WITH mysql_native_password BY 'أكتب هنا كلمة المرور';
بعد ذلك نمنح المستخدم الجديد جميع الصلاحيات من خلال كتابة الأمر التالي:
GRANT ALL PRIVILEGES ON *.* TO 'أكتب هنا اسم المستخدم'@'localhost' WITH GRANT OPTION;
بعد ذلك سجل خروج من خادم MySQL باستخدام أمر تسجيل الخروج exit
أو \q
.
- أخيرًا: إنشاء قاعدة بيانات متجرنا الإلكتروني. في البداية سجل دخول إلى خادم MySQL باستعمال المستخدم الجديد وكلمة المرور الخاصة به، وذلك بكتابة الأمر التالي:
mysql -u أكتب هنا اسم المستخدم -p
بعد ذلك ننشئ قاعدة البيانات بكتابة الأمر التالي:
CREATE DATABASE أكتب هنا اسم قاعدة البيانات;
وفي النهاية سجل خروج من خادم MySQL.
الخطوة الثالثة: تثبيت PHP والإضافات المطلوبة
في هذه الخطوة سوف نثبت PHP والإضافات المطلوبة لتثبيت ماجنتو على خادم الاستضافة، وتحديدًا الإصدار PHP 8.1 لأنه من متطلبات تثبيت إصدار ماجنتو 2.4.5. لكن قبل أن نبدأ، دعنا أولاً نحدِّث مستودعات APT الخاصة بالنظام.
sudo apt update
بعد ذلك نثبت إصدار PHP 8.1 باستخدام الأمر التالي:
sudo apt install php8.1 libapache2-mod-php php-mysql
تنويه: في حالة كتابة الأمر هكذا install php
دون تحديد لرقم الإصدار، افتراضيًا سوف يثبت النظام أحدث إصدار من PHP أو أي حزمة أخرى. بعد ذلك تحقق من إصدار PHP الذي ثبته على النظام باستخدام الأمر التالي:
php -v
بعد ذلك سوف نعمل على تعديل ملف الإعدادات الخاص بخادم أباتشي، وذلك باستخدام الأمر التالي:
sudo nano /etc/apache2/mods-enabled/dir.conf
الآن عَدِّل ترتيب ملف index.php
ليكون في مقدمة فهرس الدليل، ليبدو ملف dir.conf بعد التعديل كما يلي:
وبعد الانتهاء من التعديل، انقر على مفتاحي Ctrl + O من لوحة المفاتيح ثم مفتاح Enter لحفظ التعديل، وبعد ذلك انقر على مفتاحي Ctrl + X لغلق المحرر.
اعمل الآن على تثبيت وتمكين الإضافة mbstring، وذلك بكتابة الأمرين التاليين:
sudo apt install php8.1-mbstring
sudo phpenmod mbstring
والآن بات علينا أن نُفعِّل الإضافة Apache rewrite، وذلك بكتابة الأمر التالي:
sudo a2enmod rewrite
بعد ذلك سوف يطلب منك النظام إعادة تشغيل خادم أباتشي، وذلك من خلال كتابة الأمر التالي:
systemctl restart apache2
في هذه المرحلة علينا تثبيت إضافات PHP المطلوبة لتثبيت نظام ماجنتو 2.4.5 على خادم الاستضافة، لذا اكتب الأمر المجمع التالي:
sudo apt install php8.1-bcmath php8.1-intl php8.1-soap php8.1-zip php8.1-gd php8.1-curl php8.1-cli php8.1-xml php8.1-xmlrpc php8.1-gmp php8.1-common
بعد ذلك أعد تحميل Apache لتصبح التغييرات سارية المفعول، وذلك من خلال كتابة الأمر التالي:
sudo systemctl reload apache2
وفي الأخير، من أجل تكوين إعدادات PHP، سنحتاج إلى العثور على مسار ملف php.ini
لكي نجري عليه التعديلات المطلوبة، لذلك سنطلب من النظام إخبارنا بمسار هذا الملف وذلك من خلال كتابة الأمر التالي:
php -i | grep "Configuration File"
سوف يعطينا النظام المسار إلى ملف php.ini
، لذلك افتح هذا الملف بواسطة المحرر لتعديل بعض الإعدادات، وذلك من خلال كتابة الأمر التالي:
sudo nano مسار الملف الذي أعطاه لك النظام
ابحث في ملف php.ini
عن القيم التالية بالنقر على مفتاحي Ctrl + W، ثم كتابة جزء من الكلمة التي تبحث عنها ثم النقر على مفتاح Enter لإيجادها، الآن عَدِّل هذه القيم لتصبح على النحو التالي:
- max_execution_time=18000
- max_input_time=1800
- memory_limit=4G
في النهاية، وبعد تنفيذ هذه التعديلات، احفظ الملف كما تعلمنا سابقًا، ثم أعد تحميل خادم أباتشي مرةً أخرى، وسوف تحافظ هذه القيم على عملية التثبيت بطريقة صحيحة دون انقطاع.
sudo systemctl reload apache2
الخطوة الرابعة: تثبيت وتكوين Elasticsearch
منذ إصدار ماجنتو 2.4 أصبح Elasticsearch مكونًا إلزاميًا لتثبيت وتشغيل نظام ماجنتو، لذلك سنعمل في هذه الخطوة على تثبيت وتكوين Elasticsearch على خادم الاستضافة.
- أولاً: تثبيت Java، وذلك لأن عملية تثبيت Elasticsearch تعتمد على وجود جافا بالنظام، لذا اكتب الأمر التالي:
sudo apt install openjdk-17-jdk
بعد ذلك تحقق مما إذا كان java قد ثُبِّتَ بطريقة صحيحة على خادم الاستضافة بالتحقق من إصداره، وذلك باستخدام الأمر التالي:
java -version
- ثانيًا: استيراد مفتاح GPG لحزم Elasticsearch باستخدام الأمر التالي:
sudo apt install curl
وبمجرد الانتهاء من تثبيت curl، نفذ الأمر التالي:
sudo curl -sSfL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --no-default-keyring --keyring=gnupg-ring:/etc/apt/trusted.gpg.d/magento.gpg --import
- ثالثًا: إضافة مستودع Elasticsearch إلى النظام، وذلك باستخدام الأمر التالي:
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
- رابعًا: منح صلاحية القراءة والكتابة لمفتاح GPG، وذلك باستخدام الأمر التالي:
sudo chmod 666 /etc/apt/trusted.gpg.d/magento.gpg
- خامسًا: بعد الانتهاء من الخطوات المذكورة أعلاه، يجب عليك تحديث مستودعات APT الخاصة بالنظام، وذلك باستخدام الأمر التالي:
sudo apt update
- سادسًا: تثبيت حزم Elasticsearch على النظام باستخدام الأمر التالي:
sudo apt install elasticsearch
بعد ذلك أدخل الأوامر الثلاث التالية لتشغيل وتمكين حزم Elasticsearch لكي تعمل تلقائيًا على الخادم في حالة إعادة تشغيله:
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
-
سابعًا: تكوين إعدادات Elasticsearch، فبعد أن ثبتنا Elasticsearch و Java، سنحتاج إلى تكوين إعدادات خادم Elasticsearch الموجودة في ملف
elasticsearch.yml
المسؤولة عن اسم الخادم (العقدة) والمجموعة التي يرتبط بها، كما نحتاج إلى تكوين إعدادات جافا الموجودة في ملفjvm.options
المسؤولة عن إعدادات الذاكرة.
لنبدأ في تحرير ملف elasticsearch.yml
، افتحه باستخدام nano
أو محرر النصوص المفضل لديك:
sudo nano /etc/elasticsearch/elasticsearch.yml
الآن احذف الحرف #
من بداية السطر node.name والسطر cluster.name لإلغاء التعليق عليهما، ثم غيِّر قيمهما لتبدو كما التالي:
1. node.name: "My First Node" 2. cluster.name: my-application
بعد ذلك ابحث عن السطر الذي يحتوي على network.host ثم احذف الحرف #
لإلغاء التعليق عنه، ثم عدِّل القيمة إلى 0.0.0.0 للاستماع إلى جميع الواجهات وإتاحته للجمهور؛ أما إذا كنت تريد تكوينه ليكون خاصًا/ محليًا لجهازك فقط، فسيتعين عليك ضبط network.host إلى القيمة 127.0.0.1، وبالتالي فإن المحتوى لن يكون عامًا.
تنويه: يأتي Elasticsearch بإعدادات افتراضية معقولة لمعظم الإعدادات، لذلك يمكنك تجاوز هذه الخطوة والاعتماد على الإعدادات الافتراضية.
وفي حالة إذا كان خادم الاستضافة يحتوي على 1 جيجابايت فقط من ذاكرة الوصول العشوائي، فيجب عليك فتح ملف jvm.options
وتعديل الإعدادات التالية:
sudo nano /etc/elasticsearch/jvm.options
الآن عدِّل قيمة Xms وقيمة Xmx إلى 256 ميجابايت.
أيضًا في حالة ما إذا كان خادم الاستضافة يحتوي على 1 جيجابايت فقط من ذاكرة الوصول العشوائي، فستحتاج إلى فتح ملف elasticsearch.service لتهيئة وقت انتظار بدء التشغيل، ثم تعديل قيمة TimeoutStartSec
إلى قيمة مناسبة للخادم الخاص بك، وفي حالتي عدلتها إلى 900 ثانية.
sudo nano /usr/lib/systemd/system/elasticsearch.service
الآن نعيد تشغيل Elasticsearch من خلال الأمر:
sudo systemctl daemon-reload
والأمر:
sudo systemctl start elasticsearch.service
تنويه: اترك بعض الوقت لبدء Elasticsearch في العمل قبل أن تحاول استخدامه، لأن بخلاف ذلك قد تحصل على خطأ في الاتصال.
-
أخيرًا: اختبار عمل Elasticsearch، ويمكنك عمل ذلك إما من خلال المتصفح بكتابة هذا العنوان
127.0.0.1:9200
، أو من خلال كتابة الأمر التالي في موجه الأوامر:
curl -X GET 'http://localhost:9200'
ومن المفترض أن ترى الرد التالي:
الخطوة الخامسة: تثبيت Composer
في هذه الخطوة سنعمل على تحميل وتثبيت Composer حتى نتمكن من تحميل وتثبيت نظام ماجنتو.
- أولاً: حَمِّل Composer باستخدام الأمر التالي:
curl -sS https://getcomposer.org/installer -o composer-setup.php
- ثانيًا: ثَبِّت Composer باستخدام الأمر التالي:
sudo php composer-setup.php --install-dir=/usr/bin --filename=composer
- أخيرًا: لنتحقق من إصدار Composer الذي ثبتناه على خادم الاستضافة:
composer
تهانينا، خادم الاستضافة الآن جاهز لتحميل وتثبيت نظام ماجنتو، وتحديدًا الإصدار 2.4.5
الخطوة السادسة: تنزيل وتثبيت ماجنتو 2.4.5
بعد أن انتهينا من خطوات إعداد خادم الاستضافة لتثبيت نظام ماجنتو عليه، إليك خطوات تنزيل وتثبيت ماجنتو على الخادم، وهي كما يلي:
- أولاً: اذهب إلى مجلد html من خلال موجه الأوامر، وذلك بكتابة الأمر التالي:
cd /var/www/html
- ثانيًا: أنشئ مشروع Composer جديدًا باستخدام الإصدار المجتمعي المجاني Magento Open Source أو باستخدام الإصدار المؤسسي المدفوع Magento Commerce، وذلك باستخدام أحد الأمرين التاليين:
sudo composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.5 <اسم مجلد المشروع>
و
sudo composer create-project --repository-url=https://repo.magento.com/ magento/project-enterprise-edition=2.4.5 <اسم مجلد المشروع>
تنويه: بالأمرين السابقين يوجد رقم بعد علامة = وهو رقم الإصدار الخاص بنظام ماجنتو، يمكنك تعديل هذا الرقم إلى أي إصدار تريده، سواءً كان إصدارًا أقدم من 2.4.5 أو الإصدارات المستقبلية، وبعد رقم الإصدار ضع اسم للمجلد الذي سيحتوي على ملفات ومجلدات المشروع كما هو موضح بالصورة التالية.
- ثالثًا: بعد كتابتك لأمر إنشاء مشروع ماجنتو سيًطلب منك إدخال مفتاح الوصول العام والخاص من متجر ماجنتو.
- رابعًا: الأن نذهب إلى متجر ماجنتو ثم ننقر على زر Sign in with Adobe ID لتسجيل الدخول إلى المتجر.
سوف يعطيك الموقع عدة خيارات لتسجيل الدخول، إما بحسابك على أدوبي، أو حسابك على جوجل، أو حسابك على الفيسبوك، أو حسابك على آبل، لذا عليك تحديد الخيار المناسب لك.
بعد ذلك من أعلى يمين النافذة، انقر على اسم الحساب الخاص بك لفتح القائمة المنسدلة، ثم اختر منها My Profile.
بعد ذلك انقر على الرابط Access Keys الموجود ضمن التبويب Marketplace.
بعد ذلك انقر على زر Create A New Access Key، ومن النافذة التي ستظهر اُكتب أي اسم مناسب لهذا المفتاح، ثم اُنقر على زر Ok.
الآن أصبح لديك مفتاح عام وخاص يمكنك استخدامهما للحصول على نظام ماجنتو.
- خامسًا: الآن نعود إلى موجه الأوامر مرةً أخرى، انسخ مفتاح الوصول العام Public Key من متجر ماجنتو، ثم الصقه في موجه الأوامر في حقل Username، ثم اُنقر على مفتاح Enter، وبعد ذلك انسخ مفتاح الوصول الخاص Private Key من المتجر، ومن ثمة الصقه في موجه الأوامر في حقل Password، ثم انقر على مفتاح Enter، واكتب حرف Y لتخزين بيانات الاعتماد في المسار المذكور بالرسالة، بعدها انقر على مفتاح Enter.
الآن انتظر حتى ينتهي Composer من عملية تنزيل وإنشاء ملفات المشروع.
- سادسًا: يجب تعيين أذونات القراءة والكتابة للمجلد الذي يحتوي على ملفات المشروع قبل تثبيت Adobe Commerce أو Magento Open Source، ويُعَد ذلك ضروريًا حتى يتمكن سطر الأوامر من كتابة الملفات داخل مجلد المشروع.
في البداية اذهب إلى مجلد المشروع من خلال موجه الأوامر بكتابة الأمر التالي:
cd /var/www/html/<اكتب هنا اسم مجلد المشروع>
الآن اكتب الأوامر الأربعة التالية:
sudo find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
و
sudo find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
و
sudo chown -R اكتب هنا اسم المستخدم ذو صلاحيات الرووت:www-data .
و
sudo chmod u+x bin/magento
- سابعًا: تثبيت ماجنتو على خادم الاستضافة، سوف أعرض لك الأمر الافتراضي لتثبيت ماجنتو، وبعدها سوف أشرح لك هذا الأمر وما هي النقاط التي يجب عليك تعديلها قبل تنفيذ هذا الأمر ليتناسب مع مشروعك، وما هي النقاط التي يمكنك تعديلها بعد تثبيت ماجنتو.
إليك الأمر الافتراضي:
php bin/magento setup:install --base-url=<اكتب هنا اسم نطاق المتجر> --db-host=<اكتب هنا عنوان خادم قاعدة البيانات> --db-name=<اكتب هنا اسم قاعدة البيانات> --db-user=<اكتب هنا اسم المستخدم بقاعدة البيانات> --db-password=<اكتب هنا كلمة مرور المستخدم بقاعدة البيانات> --admin-firstname=Admin --admin-lastname=Admin --admin-email=admin@admin.com --admin-user=admin --admin-password=<اكتب هنا كلمة مرور الواجهة الخلفية> --language=en_US --currency=USD --timezone=America/Chicago --backend-frontname=admin --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200
حسنًا، إليك النقاط التي يجب عليك تعديلها قبل تنفيذ هذا الأمر:
-
--base-url: هنا يجب عليك كتابة اسم النطاق (الوهمي للاستضافة المحلية أو الحقيقي الذي اشتريته للاستضافة العامة) أو عنوان الـ IP الخاص بخادم الاستضافة، وبما أننا نبني متجر لعرض مفروشات الأَسِرَّة على خادم استضافة محلية، فسوف أستخدم اسم النطاق الوهمي هذا
http://bedding.store.com
. - --db-host: هنا يجب عليك كتابة عنوان خادم قاعدة البيانات، وبما أننا قد ثبتنا خادم قاعدة البيانات في خادم الاستضافة نفسه، فسوف يكون عنوان خادم قاعدة البيانات في هذه الحالة هو localhost؛ أما في حالة تثبيت قاعدة البيانات في خادم منفصل، فيجب أن تكتب اسم هذا الخادم.
- --db-name: هنا يجب أن تكتب اسم قاعدة البيانات التي أنشأناها لمشروعنا بالخطوة الثانية، وفي حالتنا كان اسم قاعدة البيانات التي أنشأناها هو: magento2.
- --db-user: هنا يجب أن تكتب اسم المستخدم بقاعدة البيانات ذو الصلاحيات root الذي أنشأناه بالخطوة الثانية، وفي حالتنا كان اسم المستخدم الذي أنشأناه هو: magento2.
- --db-password: هنا يجب أن تكتب كلمة المرور التي عيناها للمستخدم بقاعدة البيانات، وفي حالتنا كانت كلمة المرور الخاصة بالمستخدم magento2 هي: Admin@123456.
- --admin-email: هنا يجب أن تكتب عنوان بريد إلكتروني حقيقي، حتى تتمكن من استرداد كلمة مرور الواجهة الخلفية في حالة نسيانها.
- --admin-password: هنا يجب أن تكتب كلمة مرور خاصة للوصول لصفحة التحكم بالواجهة الخلفية للمتجر، يمكنك كتابة أي كلمة مرور تريدها، لكن راعي أن تكون قويةً وغير مكررة.
-
--backend-frontname: هذا الأمر مسؤول عن تحديد عنوان URL الخاص بالواجهة الخلفية، فإن تركت قيمته الافتراضية كما هي admin فسيكون رابط الوصول للواجهة الخلفية لمتجرنا هو:
http://bedding.store.com/admin
لذلك من إجراءات الأمان الموصى بها أن تغير القيمة الافتراضية لهذا الأمر، أو أن تحذف هذا الخيار للسماح لأمر التثبيت بإنشاء عنوان URL عشوائي تلقائيًا، وذلك لكي يصعب على المتسللين أو البرامج الضارة تخمين عنوان URL العشوائي، وسوف يُعرض لك عنوان URL في وحدة التحكم الخاصة بك عند اكتمال التثبيت.
يمكنك تعديل القيم الخاصة باللغة والعُملة والمنطقة الزمنية، أو تركها كما هي وتعديلها من الواجهة الخلفية أفضل لأنك لو كتبت قيمةً غير مدعومة من النظام فستفشل عملية التثبيت.
الآن، اكتب الأمر بعد إجراء التعديلات التي تناسبك، ليبدأ Composer في تثبيت ماجنتو 2.4.5 على خادم الاستضافة، وسوف تستغرق عملية التثبيت بعض الوقت حسب سرعة الخادم والإنترنت لديك.
وإليك الأمر في حالته النهائية بعد تعديله لبناء متجر مفروشات الأَسِرَّة الخاص بنا وبدء عملية التثبيت موضحين بالصورة التالية:
تهانينا، لقد ثَبَّتَّ نظام المتاجر الإليكترونية Magento 2.4.5 على خادم استضافة يعمل بنظام التشغيل ubuntu بنجاح.
-
ثامنًا: تعديل ملف
default.conf
بإضافة مسار المجلد pub الموجود داخل مجلد المشروع الخاص بنا إلى توجيهDocumentRoot
، وأيضًا إضافة اسم النطاق الخاص بمتجرنا (في حالة إن كنت تنوي بناء أكثر من متجر إليكتروني على نفس خادم الاستضافة) إلى توجيهServerName
، ثم إضافة شيفرة نحدد فيها المسار إلى مجلد html، والسماح له بتجاوز الجميع.
اكتب الأمر التالي في البداية لفتح ملف default.conf
:
sudo nano /etc/apache2/sites-available/000-default.conf
بعد ذلك عدّل الشيفرة الموجودة داخل هذا الملف لتصبح كما يلي:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html/اكتب هنا اسم مجلد المشروع/pub ServerName اكتب هنا عنوان نطاق المتجر ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory "/var/www/html"> AllowOverride all </Directory> </VirtualHost>
الآن احفظ الملف بعد الانتهاء من إجراء التعديلات، ثم أعد تشغيل خادم أباتشي لتصبح التغييرات التي أجريناها سارية المفعول، وذلك باستخدام الأمر التالي:
sudo systemctl restart apache2
-
تاسعًا: تعديل ملف
hosts
بإضافة اسم نطاق متجرنا إلى عنوان IP الخاص بـ localhost، وهو: 127.0.0.1
في البداية اكتب الأمر التالي لفتح ملف hosts
:
sudo nano /etc/hosts
بعد ذلك أضف السطر التالي بهذا الملف كما يلي:
127.0.0.1 اكتب هنا عنوان نطاق المتجر
الآن، احفظ الملف بعد الانتهاء من إجراء التعديلات، ثم اكتب الخمسة أوامر التالية لإعادة فهرسة وترقية قاعدة البيانات، ونشر ملفات العرض الثابتة، ومسح ذاكرة التخزين المؤقتة، وإلغاء خاصية التحقق بخطوتين أثناء تسجيل الدخول للواجهة الخلفية، وهذه الأوامر مجمعة بسطر واحد كما يلي:
sudo php bin/magento indexer:reindex && sudo php bin/magento setup:upgrade && sudo php bin/magento setup:static-content:deploy -f && sudo php bin/magento cache:flush && sudo php bin/magento module:disable Magento_TwoFactorAuth
-
أخيرًا: حان الوقت لجني ثمار المجهود الذي بذلناه، بأن نتحقق من عمل الواجهة الأمامية والخلفية للمتجر دون مشاكل، لذا اذهب إلى المتصفح واكتب أحد عناوين خادم الاستضافة مثل:
localhost
أو127.0.0.1
أو عنوان الـ IP المحلي للخادم، أو اسم النطاق، لفتح الواجهة الأمامية للمتجر.
في حالتنا هذه سأكتب اسم النطاق الخاص بمتجرنا، وهو: http://bedding.store.com
ومن المفترض أن ترى مخرجات كما بالصورة التالية:
الآن ومن خلال المتصفح أيضًا، سنتحقق من عمل الواجهة الخلفية دون مشاكل، وذلك من خلال كتابة عنوان لوحة التحكم الرئيسية، والتي تكون افتراضيًا بإضافة كلمة admin إلى عنوان خادم الاستضافة، إلا في حالة إن كنت قد عدلتها أثناء كتابتك لأمر تثبيت ماجنتو كما ذكرنا سابقًا.
في حالتنا هذه سأكتب عنوان لوحة التحكم الرئيسية الخاص بمتجرنا، وهو: http://bedding.store.com/admin
، وعندها سوف تفتح لك نافذة تسجيل الدخول، اكتب عندها اسم المستخدم وكلمة المرور اللذان قد عينَّاهم في أمر تثبيت ماجنتو، ومن المفترض أن ترى مخرجات كما بالصورة التالية:
تهانينا، فكل شيء بالمتجر يعمل على ما يرام.
الخطوة السابعة: تنزيل عينة من البيانات (خطوة اختيارية)
هل لاحظت أن الواجهة الأمامية للمتجر خالية من المنتجات؟ لهذا السبب سنعمل في هذه الخطوة على إضافة عينة من البيانات لمتجرنا لملئه ببعض المنتجات والقوائم والفئات والصور ليبدو المتجر الخاص بك على النحو التالي:
وكما ذكرت، تُعَد هذه الخطوة اختياريةً ويمكنك تجاوزها ومتابعة الدروس القادمة لتعلم كيفية بناء المتجر من البداية؛ أما من يرغب في تثبيت عينة البيانات هذه لكي يتدرب عليها، فيمكنه كتابة الخمسة أوامر التالية لجلب عينة البيانات، وإعادة فهرسة وترقية قاعدة البيانات، ونشر ملفات العرض الثابتة ومسح ذاكرة التخزين المؤقتة، وهذه الأوامر مجمعة بسطر واحد كما يلي:
sudo php bin/magento sampledata:deploy && sudo php bin/magento indexer:reindex && sudo php bin/magento setup:upgrade && sudo php bin/magento setup:static-content:deploy -f && sudo php bin/magento cache:flush
أحسنت، الآن أعد تحميل صفحة المتجر واستمتع بمراجعة المنتجات والقوائم التي أُضيفت إلى متجرك.
وفي حالة عدم ظهور صور المنتجات على المتجر كما بالصورة التالية، يمكنك حل هذه المشكلة بكتابة الأمر التالي:
sudo php bin/magento catalog:image:resize
تثبيت ماجنتو 2.4.5 على نظام التشغيل Windows
بعد أن انتهينا من تثبيت ماجنتو على نظام التشغيل Ubuntu، حان الوقت لتثبيت ماجنتو على نظام التشغيل Windows، وستكون خطواتنا في عملية التثبيت كما يلي:
- الخطوة الأولى: تثبيت خادم XAMPP
- الخطوة الثانية: تثبيت Composer
- الخطوة الثالثة: تثبيت Elasticsearch
-
الخطوة الرابعة: تكوين ملف
php.ini
- الخطوة الخامسة: إنشاء قاعدة البيانات
- الخطوة السادسة: تنزيل وتثبيت ماجنتو 2.4.5
- الخطوة السابعة: تنزيل عينة من البيانات (خطوة اختيارية)
الخطوة الأولى: تثبيت خادم XAMPP
خطوتنا الأولى ستكون تثبيت Xampp، وهو خادم ويب يساعد المطورين على إنشاء واختبار تطبيقاتهم على خادم ويب محلي، فهو يحتوي على PHP و MySQL و Apache، وهي كما تعلم مكونات مطلوبة للحصول على نظام Magento.
في البداية، إذهب إلى الموقع الرسمي لخادم XAMPP، ثم انقر على القائمة Download، بعدها حدد أحدث إصدار من الخادم المتوافق مع نظام التشغيل Windows، ثم انقر على زر Download لتنزيله على الحاسوب، وعادةً ما يكون أحدث إصدار متواجد في نهاية القائمة كما هو موضح بالصورة التالية:
بعد انتهاء عملية التنزيل، شغّل ملف إعداد التثبيت وتابع جميع الخطوات لتثبيت خادم Xampp، وفي خطوة تحديد المكونات تأكد من تحديد Apache و Mysql و PHP و PHPmyadmin.
الآن افتح لوحة تحكم خادم XAMPP وانقر على زر Start الموجود بجوار Apache و Mysql لتشغيلهم، ويشير اللون الأخضر إلى أنهم يعملون دون مشاكل.
الخطوة الثانية: تثبيت Composer
Composer هي أداة لإدارة المكتبات في PHP. توفر لنا هذه الأداة الكثير من الوقت بتثبيت الحزم الضرورية التي يحتاج لها مشروعك لاستخدامها، وما عليك سوى التصريح عنها، وسيعمل Composer تلقائيًا بتنزيل هذه المكتبات من خلال خوادمها. في البداية إذهب إلى الموقع الرسمي لأداة Composer، ثم انقر على زر Download.
ومن النافذة التالية، انقر على "Composer-Setup.exe" لتنزيل الأداة على الحاسوب.
بعد انتهاء عملية التنزيل، شغل ملف إعداد التثبيت وتابع جميع الخطوات لتثبيت أداة Composer، وفي خطوة تحديد مسار سطر أوامر PHP، حدد ملف php.exe
الخاص بخادم XAMPP وستجده في المسار التالي: C:/xampp/php/php.exe
سنتحقق الآن مما إذا كان Composer قد ثُبِّتَ بنجاح عن طريق فتح موجه أوامر Windows، واكتب كلمة composer؛ فإذا عرضت لك شاشة موجه الأوامر النتيجة كما بالصورة التالية، فذلك يعني أن Composer قد ثُبِّتَ بطريقة صحيحة.
الخطوة الثالثة: تثبيت Elasticsearch
Elasticsearch هو الآن أداة مطلوبة لتثبيت نظام Magento، وأثناء عملية التثبيت، سيتحقق النظام مما إذا كان Eleasticsearch قد ثُبِّتَ وهُيِّئ بطريقة صحيحة، فإذا كان هناك خطأ في التحقق من Elasticsearch، فستتوقف عملية التثبيت.
في البداية إذهب إلى الموقع الرسمي لأداة Elasticsearch، ثم تأكد من اختيار نظام التشغيل Windows. ومن القائمة المنسدلة، انقر على زر التنزيل كما هو موضح بالصورة التالية.
لكن أنصحك باستخدام الإصدار 7.17.0 من Elasticsearch، فهو متوافق مع إصدار ماجنتو 2.4.5، واستخدامه غير مُعقد مثل الإصدارات الحديثة من Elasticsearch.
بعد انتهاء عملية التنزيل، استخرج المجلد المضغوط ثم انقله داخل مجلد htdocs الموجود بمجلد الخادم XAMPP، وستجده في المسار التالي: C:/xampp/htdocs
.
الآن انتقل إلى المجلد elasticsearch\bin
، ثم انقر بزر الفأرة الأيمن على ملف elasticsearch.bat
وحدد "تشغيل كمسؤول".
اترك النافذة السوداء هذه تعمل دائمًا في الخلفية، وللتحقق مما إذا كان Elasticsearch يعمل على نظامك، افتح المستعرض الخاص بك واكتب هذا العنوان: localhost:9200
، فإذا رأيت النتيجة كما بالصورة التالية فذلك يعني أن Elasticsearch يعمل دون مشاكل.
الخطوة الرابعة: تكوين ملف php.ini
قبل تثبيت نظام ماجنتو تأكد من تثبيت وتمكين جميع إضافات PHP المطلوبة، وتكوين بعض قيم PHP لجعل التثبيت يسير بسلاسة.
-
أولاً، تثبيت وتمكين جميع إضافات PHP المطلوبة، كما هو مذكور في متطلبات نظام Magento نحتاج إلى تثبيت وتمكين امتداد php التالية:
- bcmath
- ctype
- curl
- dom
- gd
- hash
- iconv
- intl
- mbstring
- openssl
- pdo_mysql
- simplexml
- soap
- xsl
- zip
- ext-sockets.
وبخلاف نظام التشغيل Ubuntu، تُثبت جميع هذه الإضافات تلقائيًا على نظام التشغيل Windows عند تثبيت PHP عليه، وسنحتاج فقط إلى تفعيل 6 إضافات من مجموع الإضافات المطلوبة.
في البداية، اذهب إلى لوحة تحكم خادم XAMPP، ثم انقر على زر Config الخاص بخادم أباتشي، ومن القائمة التي ستظهر اختر منها php.ini.
من الملف الذي سيفتح ابحث عن الإضافات التالية:
- extension=gd
- extension=intl
- extension=soap
- extension=xsl
- extension=sockets
- extension=sodium
الآن، احذف علامة (;) من بداية كل سطر لهذه الإضافات، ثم احفظ الملف.
-
ثانيًا: تكوين بعض إعدادات PHP، وفي نفس الملف
php.ini
ابحث عن القيم التالية وغيرها على النحو التالي:- max_execution_time=18000
- max_input_time=1800
- memory_limit=4G
ستحافظ هذه القيم على تنفيذ عملية التثبيت دون انقطاع، والآن احفظ الملف ثم أغلقه، ومن خلال لوحة تحكم خادم XAMPP انقر على زر Stop الخاص بخادم أباتشي ثم انقر على زر Start لإعادة تشغيل خادم أباتشي حتى تُطبق التعديلات التي أجريناها.
الخطوة الخامسة: إنشاء قاعدة البيانات
قبل أن نبدأ في تثبيت ماجنتو، يتعين علينا إنشاء قاعدة بيانات لمتجرنا حتى نتمكن من تخزين جميع الإعدادات المتعلقة بالمنتجات، الكتالوج، المستخدمين وتكوين المتجر.
في البداية، اذهب إلى لوحة تحكم خادم Xampp، ثم انقر على زر Admin الخاص بخادم MySQL لفتح phpMyAdmin من خلال المستعرض.
الآن، ومن النافذة التي ستظهر لك، انقر على New، ثم اكتب اسم لقاعدة البيانات الجديدة (في حالتنا أسميناها magento2)، ثم انقر على زر تكوين لإنشاء قاعدة البيانات.
وكما نعلم، خادم MySQL يأتي افتراضيًا بدون كلمة مرور للمستخدم root، لذلك يجب علينا تعيين كلمة مرور له، اذهب إلى لوحة تحكم خادم Xampp ثم انقر على زر Shell لفتح موجه الأوامر.
بعد ذلك أدخل الأمر التالي لتعيين كلمة مرور للمستخدم root الخاص بالخادم MySQL
mysqladmin.exe -u root password اكتب هنا كلمة المرور
الآن، وحتى تستطيع استخدام phpMyAdmin مرةً أخرى، ستحتاج إلى تعديل ملف config.inc.php
لإضافة كلمة المرور التي عيناها للمستخدم root به، لذلك اذهب إلى لوحة تحكم خادم Xampp، ثم انقر على زر config.inc.php.
من الملف الذي سيفتح، ابحث عن كلمة Password ثم اكتب كلمة المرور الجديدة كما هو موضح بالصورة التالية:
وفي النهاية، أعد تشغيل خادم أباتشي كما تعلمنا سابقًا حتى تُطبق التعديلات التي أجريناها.
الخطوة السادسة: تنزيل وتثبيت ماجنتو 2.4.5
الآن انتهينا من كل خطوات الإعداد، ويمكننا البدء في تثبيت Magento 2.4.5 على خادم الاستضافة الذي يعمل بنظام التشغيل ويندوز.
- أولاً: من خلال موجه الأوامر اكتب الأمر التالي:
cd C:/xampp/htdocs
- ثانيًا: أنشئ مشروع Composer جديدًا باستخدام الإصدار المجتمعي المجاني Magento Open Source أو باستخدام الإصدار المؤسسي المدفوع Magento Commerce، وذلك باستخدام أحد الأمرين التاليين:
sudo composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.5 <اسم مجلد المشروع>
و
sudo composer create-project --repository-url=https://repo.magento.com/ magento/project-enterprise-edition=2.4.5 <اسم مجلد المشروع>
- ثالثًا: بعد كتابتك لأمر إنشاء مشروع ماجنتو سيًطلب منك إدخال مفتاح الوصول العام والخاص من متجر ماجنتو، ولقد وضحنا خطوات حصولك عليهم بالخطوة السادسة من تثبيت ماجنتو على نظام التشغيل Ubuntu.
- رابعًا: بعد حصولك على مفتاحي الوصول العام والخاص من متجر ماجنتو، انسخ مفتاح الوصول العام Public Key، ثم الصقه في موجه الأوامر في حقل Username، ثم انقر على مفتاح Enter، بعد ذلك انسخ مفتاح الوصول الخاص Private Key ثم الصقه في موجه الأوامر في حقل Password، ومن ثمة انقر على مفتاح Enter، بعدها اكتب حرف Y لتخزين بيانات الاعتماد في المسار المذكور بالرسالة، وانقر على مفتاح Enter.
الآن انتظر حتى ينتهي Composer من عملية تنزيل وإنشاء ملفات المشروع.
- خامسًا: نحتاج إلى ضبط مجلد الجذر إلى pub، لمنع زوار المتجر من الوصول إلى المناطق الحساسة في نظام ملفات Magento من خلال المستعرض.
وللقيام بذلك، افتح الملف httpd-vhosts.conf
الموجود بالمسار التالي: C:\xampp\apache\conf\extra\httpd-vhosts.conf
، ثم أضف الشيفرة التالية في أسفل الملف:
<VirtualHost *:80> DocumentRoot "C:/xampp/htdocs/اكتب هنا اسم مجلد المشروع/pub" ServerName اكتب هنا اسم النطاق </VirtualHost> <VirtualHost *:80> DocumentRoot "C:/xampp/htdocs" ServerName localhost </VirtualHost>
-
سادسًا: تعديل ملف
hosts
بإضافة اسم نطاق متجرنا إلى عنوان IP الخاص بـ localhost وهو: 127.0.0.1 في البداية اذهب إلى المسار التالي:C:\Windows\System32\drivers\etc\hosts
، ثم أضف السطر أدناه في أسفل الملف:
127.0.0.1 اكتب هنا اسم النطاق
- سابعًا، أعد تشغيل خادم أباتشي كما تعلمنا سابقًا حتى تُطبق التعديلات التي أجريناها.
- ثامنًا، أدخل الآن الأمر التالي لبدء تثبيت Magento 2.4.5 (تأكد من تشغيل Elasticsearch و Apache و Mysql قبل تنفيذ هذا الأمر):
في البداية اذهب إلى مجلد المشروع من خلال موجه الأوامر بكتابة الأمر التالي:
cd C:/xampp/htdocs/اكتب هنا اسم مجلد المشروع
الآن اكتب الأمر التالي بعد تعديل ما يلزم به كما تعلمنا في الخطوة السادسة من تثبيت ماجنتو على نظام التشغيل Ubuntu:
php bin/magento setup:install --base-url="اكتب هنا اسم النطاق" --db-host="localhost" --db-name="اكتب هنا اسم قاعدة البيانات" --db-user="اكتب هنا اسم مستخدم قاعدة البيانات" --db-password="اكتب هنا كلمة مرور مستخدم قاعدة البيانات" --admin-firstname="admin" --admin-lastname="admin" --admin-email="user@example.com" --admin-user="admin" --admin-password="Admin@123456" --language="en_US" --currency="USD" --timezone="America/Chicago" --use-rewrites="1" --backend-frontname="admin" --search-engine=elasticsearch7 --elasticsearch-host="localhost" --elasticsearch-port=9200
حسنًا، نظرًا لأن نظام التشغيل Windows ليس مدعومًا لتشغيل ماجنتو عليه مثل نظام التشغيل Ubuntu، فستواجهك عدة مشاكل أثناء عملية التثبيت، وأولى هذه المشاكل ستكون بعد تشغيل الأمر السابق، وهي عبارة عن خطأ في سطر 170 بملف PatchApplier.php
، وخطأ في سطر 72 بملف Gd2.php
كما هو موضح بالصورة التالية:
ولحل هذه المشكلة، افتح الملف Gd2.php
الموجود بالمسار التالي:
C:\xampp\htdocs\magento2\vendor\magento\framework\Image\Adapter\Gd2.php
ثم عدل الشيفرة البرمجية بالسطر التالي:
if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes)) {
لتصبح كما يلي:
if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) {
الآن، احفظ الملف وأعد تشغيل أمر تثبيت ماجنتو السابق مرةً أخرى في موجه الأوامر، ومن المفترض أن تكتمل عملية التثبيت بنجاح هذه المرة.
تهانينا، لقد ثَبَّتَّ Magento 2.4.5 بنجاح على خادم استضافة يعمل بنظام التشغيل ويندوز.
-
أخيرًا: حان الوقت لجني ثمار المجهود الذي بذلناه، بأن نتحقق من عمل الواجهة الأمامية والخلفية للمتجر دون مشاكل، لذا عليك هنا الذهاب إلى المتصفح وكتابة أحد عناوين خادم الاستضافة. في حالتنا سأكتب اسم النطاق الخاص بمتجرنا، وهو:
http://bedding.store.com
المشكلة الثانية التي ستواجهك هي عدم عرض الواجهة الأمامية للمتجر بطريقة سليمة كما هو موضح بالصورة التالية.
ولحل هذه المشكلة، افتح الملف Validator.php
الموجود بالمسار التالي:
C:\xampp\htdocs\magento2\vendor\magento\framework\View\Element\Template\File\validator.php
ثم عدّل الشيفرة البرمجية بالسطر التالي:
$realPath = $this->fileDriver->getRealPath($path);
لتصبح كما يلي:
$realPath = str_replace('\\', '/', $this->fileDriver->getRealPath($path));
بعد ذلك افتح الملف di.xml
الموجود بالمسار التالي: C:\xampp\htdocs\magento2\app/etc/di.xml
، ثم عدل الشيفرة البرمجية بالسطر التالي:
Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink
لتصبح كما يلي:
Magento\Framework\App\View\Asset\MaterializationStrategy\Copy
الآن، اكتب الخمسة أوامر التالية لإعادة فهرسة وترقية قاعدة البيانات، من خلال نشر ملفات العرض الثابتة، ومسح ذاكرة التخزين المؤقتة وإلغاء خاصية التحقق بخطوتين أثناء تسجيل الدخول للواجهة الخلفية، وهذه الأوامر مجمعة بسطر واحد كما يلي:
php bin/magento indexer:reindex && php bin/magento setup:upgrade && php bin/magento setup:static-content:deploy -f && php bin/magento cache:flush && php bin/magento module:disable Magento_TwoFactorAuth
في النهاية، أعد تحميل الواجهة الأمامية والخلفية للمتجر وستجدهم يعملان دون مشاكل.
الخطوة السابعة: تنزيل عينة من البيانات (خطوة اختيارية)
لإضافة عينة من البيانات لمتجرنا لملئه ببعض المنتجات والقوائم والفئات والصور كما فعلنا في نظام Ubuntu، اكتب الخمسة أوامر التالية لجلب عينة البيانات، من خلال إعادة فهرسة وترقية قاعدة البيانات، ونشر ملفات العرض الثابتة ومسح ذاكرة التخزين المؤقتة، وهذه الأوامر مجمعة بسطر واحد كما يلي:
php bin/magento sampledata:deploy && php bin/magento indexer:reindex && php bin/magento setup:upgrade && php bin/magento setup:static-content:deploy -f && php bin/magento cache:flush
وفي حالة عدم ظهور صور المنتجات على المتجر، يمكنك حل هذه المشكلة بكتابة الأمر التالي:
php bin/magento catalog:image:resize
أحسنت، بهذا يكون أصبح لديك الآن متجر بنظام ماجنتو 2.4.5 يعمل على خادم استضافة بنظام ويندوز وبه عينة من البيانات.
خاتمة
وإلى هنا نكون قد وصلنا إلى نهاية هذا الدرس من هذا الدليل الذي تعرفنا فيه على خطة بناء متجر إلكتروني متعدد اللغات ويدعم اللغة العربية، وتعرفنا على الأدوات التي سنستخدمها لمساعدتنا في بناء متجرنا، ثم بدأنا في إعداد خادم الاستضافة بالأدوات اللازمة لتحميل وتثبيت أحدث إصدار من نظام ماجنتو وهو الإصدار 2.4.5 وثبتناه على نظامي التشغيل Ubuntu و Windows.
وبما أن عملية تثبيت نظام ماجنتو منذ أن استحوذت شركة أدوبي عليه تُعَد أمرًا محبطًا للغاية وقد يستسلم العديد من المستخدمين نظرًا لكثرة خطوات تثبيته ووجود العديد من المشكلات أثناء عملية التثبيت، فإن واجهتك أي مشاكل أو لو كانت لديك استفسارات فلا تتردد في ذكرها لنا في التعليقات لنساعدك على تخطيها.
وفي النهاية نتمنى أن يكون هذا الدرس قد أضاف لكم معلومات جديدة ومفيدة، وفي الدرس القادم سوف نشرح الإعدادات الأساسية لتكوين المتجر.
أفضل التعليقات
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.