كيفية تثبيت Sylius eCommerce Platform على Ubuntu 18.04 LTS

Sylius عبارة عن منصة تجارة إلكترونية حديثة لـ PHP ، استنادًا إلى Symfony Framework. مصدر Sylius موجود على GitHub .

سيرشدك هذا الدليل خلال عملية تثبيت Sylius على مثيل Ubuntu 18.04 LTS Vultr الجديد باستخدام PHP و MySQL كقاعدة بيانات و Nginx كخادم ويب.

المتطلبات

لتتمكن من تثبيت Sylius ، ستحتاج إلى:

  • مثيل خادم Vultr مع 2048 ميغابايت على الأقل من الذاكرة.
  • Nginx أو أباتشي. في هذا الدليل ، نستخدم Nginx.
  • PHP الإصدار 7.2 أو أحدث مع بعض ملحقات PHP المحددة: gd، exif، fileinfo،intl
  • إعدادات تكوين PHP: memory_limitتساوي أو أكبر من 1024M،date.timezone
  • MySQL الإصدار 5.7 أو 8.0
  • ملحن
  • Node.js
  • غزل

قبل ان تبدأ

تحقق من إصدار Ubuntu.

lsb_release -ds
# Ubuntu 18.04.2 LTS

قم بإنشاء non-rootحساب مستخدم جديد له sudoحق الوصول والتبديل إليه.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

ملاحظة : استبدل johndoeباسم المستخدم الخاص بك .

قم بإعداد المنطقة الزمنية.

sudo dpkg-reconfigure tzdata

تأكد من أن نظامك محدث.

sudo apt update && sudo apt upgrade -y

قم بتثبيت الحزم المطلوبة.

sudo apt install -y git curl wget unzip socat

قم بتثبيت PHP

قم بتثبيت PHP وملحقات PHP المطلوبة.

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-gd php7.2-intl php7.2-zip php7.2-curl php7.2-xml php7.2-mbstring

التحقق من إصدار.

php --version
# PHP 7.2.19-0ubuntu0.18.04.1 (cli) (built: Jun  4 2019 14:48:12) ( NTS )

تشغيل sudo vim /etc/php/7.2/fpm/php.iniو sudo vim /etc/php/7.2/cli/php.iniووضع memory_limitل 1024Mأو أكثر، واقامة date.timezone.

memory_limit = 1024M
date.timezone = Region/City

أعد تشغيل PHP-FPM.

sudo systemctl restart php7.2-fpm.service

تثبيت MySQL وإنشاء قاعدة بيانات

تثبيت MySQL.

sudo apt install -y mysql-server

التحقق من إصدار.

mysql --version && sudo mysqld --version
# mysql  Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using  EditLine wrapper
# mysqld  Ver 5.7.27-0ubuntu0.18.04.1 for Linux on x86_64 ((Ubuntu))

قم بتشغيل mysql_secure installationالبرنامج النصي لتحسين أمان MySQL وتعيين كلمة المرور rootلمستخدم MySQL .

sudo mysql_secure_installation

Would you like to setup VALIDATE PASSWORD plugin? N
Please set the password for root here.
New password: **********************
Re-enter new password: **********************
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? Y

Success.

All done!

الاتصال بشبكة MySQL كمستخدم الجذر.

sudo mysql -u root -p
# Enter password

قم بإنشاء قاعدة بيانات MySQL فارغة ومستخدم لـ Sylius ، وتذكر أوراق الاعتماد.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit

ملاحظة: استبدال dbnameو usernameمع أسماء مناسبة للالإعداد. استبدلها passwordبكلمة مرور قوية.

قم بتثبيت Nginx

قم بتثبيت Nginx.

sudo apt install -y nginx

التحقق من إصدار.

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

تكوين Nginx لـ Sylius. قم بتشغيل sudo vim /etc/nginx/sites-available/sylius.confالملف وملؤه بالتكوين التالي.

server {
  listen 80;
  server_name example.com;
  root /var/www/sylius/public;
  location / {
    try_files $uri /index.php$is_args$args;
  }
  location ~ ^/index\.php(/|$) {
    fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
    internal;
  }
  location ~ \.php$ {
    return 404;
  }
  client_max_body_size 6m;
}

احفظ الملف واخرج مع :+ W+ Q.

قم بتنشيط sylius.confالتكوين الجديد عن طريق ربط الملف sites-enabledبالدليل.

sudo ln -s /etc/nginx/sites-available/sylius.conf /etc/nginx/sites-enabled/

اختبر التكوين.

sudo nginx -t

إعادة تحميل Nginx.

sudo systemctl reload nginx.service

قم بتثبيت الملحن

قم بتثبيت Composer عالميًا.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

التحقق من إصدار.

composer --version
# Composer version 1.9.0 2019-08-02 20:55:32

قم بتثبيت Node.js

تثبيت Node.js.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs

التحقق من إصدار.

node --version
# v10.16.2

تثبيت الغزل

تثبيت مدير حزمة الغزل.

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn

التحقق من إصدار.

yarn --version
# 1.17.3

قم بتثبيت Sylius

قم بإنشاء دليل جذر المستند.

sudo mkdir -p /var/www/sylius

تغيير ملكية /var/www/syliusالدليل إلى johndoe.

sudo chown -R johndoe:johndoe /var/www/sylius

انتقل إلى مجلد جذر المستند.

cd /var/www/sylius

ابدأ مشروع Sylius جديدًا بتشغيل هذا الأمر:

composer create-project sylius/sylius-standard .

تشغيل vim .env.localلإدخال تفاصيل قاعدة البيانات ولتشغيل Sylius في بيئة تختارها.

APP_ENV=prod
DATABASE_URL=mysql://username:[email protected]/dbname

ملاحظة: استبدال username، passwordو dbnameمع تفاصيل قاعدة البيانات الخاصة بك.

بعد تنفيذ كل شيء ، قم بتشغيل الأمر التالي لتثبيت Sylius:

php bin/console sylius:install -e prod 

من أجل رؤية واجهة أمامية تعمل بكامل طاقتها ، ستحتاج إلى تثبيت أصولها. يستخدم Sylius Gulp لبناء أصول الواجهة الأمامية باستخدام Yarn كمدير حزمة JavaScript. بعد تثبيت Yarn ، انتقل إلى دليل المشروع الخاص بك لتثبيت التبعيات.

yarn install

ثم قم ببناء أصول الواجهة الأمامية عن طريق تشغيل:

yarn build

تغيير ملكية /var/www/syliusالدليل إلى www-data.

sudo chown -R www-data:www-data /var/www/sylius

تم تثبيت منصة Sylius للتجارة الإلكترونية. بشكل افتراضي ، يتم توجيه لوحة الإدارة إلى /admin.



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

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

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد