Cum se instalează Sylius eCommerce Platform pe Ubuntu 18.04 LTS

Sylius este o platformă modernă de e-commerce pentru PHP, bazată pe Symfony Framework. Sursa Sylius este pe GitHub .

Acest ghid vă va parcurge procesul de instalare Sylius pe o nouă instanță Ubult 18.04 LTS Vultr folosind PHP, MySQL ca bază de date și Nginx ca server web.

cerinţe

Pentru a putea instala Sylius veți avea nevoie de:

  • Instanță server Vultr cu cel puțin 2048 MB memorie.
  • Nginx sau Apache. În acest ghid, folosim Nginx.
  • PHP versiunea 7.2 sau mai mare , cu unele extensii specifice PHP: gd, exif, fileinfo,intl
  • Setări de configurare PHP: memory_limitegale sau mai mari decât 1024M,date.timezone
  • Versiunea MySQL 5.7 sau 8.0
  • Compozitor
  • Node.js
  • fire

Înainte de a începe

Verificați versiunea Ubuntu.

lsb_release -ds
# Ubuntu 18.04.2 LTS

Creați un non-rootcont de utilizator nou cu sudoacces și treceți la acesta.

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

NOTĂ : Înlocuiți johndoecu numele de utilizator .

Setați fusul orar.

sudo dpkg-reconfigure tzdata

Asigurați-vă că sistemul dvs. este actualizat.

sudo apt update && sudo apt upgrade -y

Instalați pachetele necesare.

sudo apt install -y git curl wget unzip socat

Instalați PHP

Instalați PHP și extensiile PHP necesare.

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

Verificați versiunea.

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

Rulați sudo vim /etc/php/7.2/fpm/php.iniși sudo vim /etc/php/7.2/cli/php.inisetați memory_limitla 1024Msau mai multe și configurați date.timezone.

memory_limit = 1024M
date.timezone = Region/City

Reporniți PHP-FPM.

sudo systemctl restart php7.2-fpm.service

Instalați MySQL și creați o bază de date

Instalați MySQL.

sudo apt install -y mysql-server

Verificați versiunea.

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))

Rulați mysql_secure installationscriptul pentru a îmbunătăți securitatea MySQL și setați parola pentru rootutilizatorul 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!

Conectați-vă la shell-ul MySQL ca utilizator root.

sudo mysql -u root -p
# Enter password

Creați o bază de date MySQL și un utilizator gol pentru Sylius și nu uitați de datele de acreditare.

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

NOTĂ: Înlocuiți dbnameși usernamecu nume adecvate pentru configurarea dvs. Înlocuiți passwordcu o parolă puternică.

Instalați Nginx

Instalați Nginx.

sudo apt install -y nginx

Verificați versiunea.

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

Configurați Nginx pentru Sylius. Rulați sudo vim /etc/nginx/sites-available/sylius.confși populați fișierul cu următoarea configurație.

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;
}

Salvați fișierul și ieșiți cu :+ W+ Q.

Activați noua sylius.confconfigurație prin conectarea fișierului la sites-enableddirector.

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

Testați configurația.

sudo nginx -t

Reîncărcați Nginx.

sudo systemctl reload nginx.service

Instalați Composer

Instalați Composer la nivel global.

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

Verificați versiunea.

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

Instalați Node.js

Instalează Node.js.

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

Verificați versiunea.

node --version
# v10.16.2

Instalați fire

Instalați managerul de pachete 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

Verificați versiunea.

yarn --version
# 1.17.3

Instalați Sylius

Creați un director rădăcină document.

sudo mkdir -p /var/www/sylius

Schimbați proprietatea /var/www/syliusdirectorului în johndoe.

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

Navigați la folderul rădăcină al documentului.

cd /var/www/sylius

Inițiați un nou proiect Sylius rulând această comandă:

composer create-project sylius/sylius-standard .

Rulați vim .env.localpentru a introduce detaliile bazei de date și pentru a rula Sylius într - un mediu de alegere.

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

NOTĂ: Înlocuiți username, passwordși dbnamecu detaliile bazei de date.

După ce totul este în loc, rulați următoarea comandă pentru a instala Sylius:

php bin/console sylius:install -e prod 

Pentru a vedea un frontend complet funcțional, va trebui să instalați activele sale. Sylius folosește Gulp pentru a construi active frontend folosind Fire ca manager de pachete JavaScript. După instalarea firelor, accesați directorul de proiect pentru a instala dependențele.

yarn install

Apoi, construiți activele frontend rulând:

yarn build

Schimbați proprietatea /var/www/syliusdirectorului în www-data.

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

Platforma Sylius e-commerce este instalată. În mod implicit, panoul de administrare rutează spre /admin.



Leave a Comment

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe