Як встановити платформу електронної комерції Sylius на CentOS 7

Sylius — сучасна платформа електронної комерції для PHP, заснована на Symfony Framework. Вихідний код Sylius розміщено на GitHub .

Цей посібник проведе вас через процес встановлення Sylius на свіжому екземплярі CentOS 7 Vultr з використанням PHP, MariaDB як бази даних і Nginx як веб-сервера.

Вимоги

Щоб мати можливість встановити Sylius, вам знадобиться:

  • Примірник сервера Vultr з принаймні 2048 МБ пам’яті.
  • Nginx або Apache. У цьому посібнику ми використовуємо Nginx.
  • PHP версії 7.2 або новішої з деякими конкретними розширеннями PHP: gd, exif, fileinfo,intl
  • Параметри конфігурації PHP: memory_limitдорівнює або більше ніж 1024M,date.timezone
  • MySQL версії 5.7 або 8.0 або еквівалент MariaDB
  • Композитор
  • Node.js
  • Пряжа

Перед тим як ти почнеш

Перевірте версію CentOS.

cat /etc/centos-release # CentOS Linux release 7.6.1810 (Core)

Створіть новий non-rootобліковий запис користувача з sudoдоступом і перейдіть до нього.

useradd -c "John Doe" johndoe && passwd johndoe usermod -aG wheel johndoe su - johndoe

ПРИМІТКА. Замініть johndoeна своє ім’я користувача.

Налаштуйте часовий пояс.

timedatectl list-timezones sudo timedatectl set-timezone 'Region/City'

Переконайтеся, що ваша система оновлена.

sudo yum update

Встановіть необхідні пакети.

sudo yum install -y socat git wget unzip vim

Вимкніть SELinux і брандмауер.

sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld

Встановіть PHP

Налаштуйте репозиторію Webtatic YUM.

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Встановіть PHP та необхідні розширення PHP.

sudo yum install -y php72w-cli php72w-fpm php72w-common php72w-mysqlnd php72w-gd php72w-intl php72w-zip php72w-curl php72w-xml php72w-mbstring php72w-json

Перевірте версію.

php --version # PHP 7.2.21 (cli) (built: Aug 4 2019 08:42:27) ( NTS )

Запустіть і ввімкніть PHP-FPM.

sudo systemctl start php-fpm.service sudo systemctl enable php-fpm.service

Запуск sudo vim /etc/php.iniі встановити memory_limitна 1024Mабо більше, і налаштувати date.timezone.

memory_limit = 1024M date.timezone = Region/City

Перезапустіть PHP-FPM.

sudo systemctl restart php-fpm.service

Встановіть MariaDB і створіть базу даних

Встановіть сервер баз даних MariaDB.

sudo vi /etc/yum.repos.d/MariaDB.repo # Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file [mariadb] name = MariaDB baseurl = https://yum.mariadb.org/10.2/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 sudo yum install -y MariaDB-server MariaDB-client

Перевірте версію.

mysql --version # mysql Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1

Запустіть і ввімкніть MariaDB.

sudo systemctl start mariadb.service sudo systemctl enable mariadb.service

Запустіть mysql_secure installationсценарій для покращення безпеки MariaDB і встановіть пароль для rootкористувача MariaDB .

sudo mysql_secure_installation

Підключіться до оболонки MariaDB як користувач root.

sudo mysql -u root -p # Enter password

Створіть порожню базу даних MariaDB і користувача для Sylius і запам’ятайте облікові дані.

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

ПРИМІТКА. Замініть dbnameта usernameвведіть відповідні імена для вашого налаштування. Замініть passwordнадійним паролем.

Встановіть Nginx

Встановіть Nginx.

sudo yum install -y nginx

Перевірте версію.

nginx -v # nginx version: nginx/1.12.2

Запустіть і ввімкніть Nginx.

sudo systemctl start nginx.service sudo systemctl enable nginx.service

Налаштуйте Nginx для Sylius. Запустіть sudo vim /etc/nginx/conf.d/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 127.0.0.1:9000; 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.

Перевірте конфігурацію.

sudo nginx -t

Перезавантажте Nginx.

sudo systemctl reload nginx.service

Встановіть Composer

Установіть 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.

sudo yum install -y gcc-c++ make sudo -s curl -sL https://rpm.nodesource.com/setup_10.x | bash - exit sudo yum install -y nodejs

Перевірте версію.

node --version # v10.16.3

Встановіть пряжу

Встановіть менеджер пакетів Yarn.

curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo sudo yum install -y 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каталогу на nginx.

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

Запустіть sudo vim /etc/php-fpm.d/www.confі встановіть для користувача та групи значення nginx. Спочатку вони будуть встановлені на apache.

sudo vi /etc/php-fpm.d/www.conf # user = nginx # group = nginx

Створіть /var/lib/php/session/каталог і змініть власника на nginx.

sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php/session

Перезапустіть службу PHP-FPM.

sudo systemctl restart php-fpm.service

Встановлено платформу електронної комерції Sylius. За замовчуванням панель адміністрування спрямовує на /admin.


Leave a Comment

Повстання машин: застосування ШІ в реальному світі

Повстання машин: застосування ШІ в реальному світі

Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.

DDOS-атаки: короткий огляд

DDOS-атаки: короткий огляд

Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.

Революційні винаходи від Google, які полегшать ваше життя.

Революційні винаходи від Google, які полегшать ваше життя.

Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.

Еволюція зберігання даних – інфографіка

Еволюція зберігання даних – інфографіка

Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.

Функціональні можливості шарів еталонної архітектури великих даних

Функціональні можливості шарів еталонної архітектури великих даних

Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше