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

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

Цей посібник проведе вас через процес встановлення Sylius на оновленому екземплярі Ubuntu 18.04 LTS Vultr з використанням PHP, MySQL як бази даних і 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
  • Композитор
  • 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 як користувач root.

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

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

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

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

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:password@127.0.0.1/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.

Залишити коментар

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

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

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

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. Прочитайте цю статтю, щоб дізнатися більше