Sylius eCommerce Platform installeren op CentOS 7

Sylius is een modern e-commerceplatform voor PHP, gebaseerd op het Symfony Framework. De broncode van Sylius wordt gehost op GitHub .

Deze gids leidt u door het Sylius-installatieproces op een nieuwe CentOS 7 Vultr-instantie met PHP, MariaDB als database en Nginx als webserver.

Vereisten

Om Sylius te kunnen installeren heeft u nodig:

  • Vultr-serverinstantie met minimaal 2048 MB geheugen.
  • Nginx of Apache. In deze gids gebruiken we Nginx.
  • PHP versie 7.2 of hoger met een aantal specifieke PHP-extensies: gd, exif, fileinfo,intl
  • PHP configuratie-instellingen: memory_limitgelijk aan of groter dan 1024M,date.timezone
  • MySQL versie 5.7 of 8.0 of equivalent van MariaDB
  • Componist
  • Node.js
  • Garen

Voordat je begint

Controleer de CentOS-versie.

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

Maak een nieuw non-rootgebruikersaccount aan met sudotoegang en schakel ernaar.

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

OPMERKING: vervang johndoedoor uw gebruikersnaam.

Stel de tijdzone in.

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

Zorg ervoor dat uw systeem up-to-date is.

sudo yum update

Installeer de benodigde pakketten.

sudo yum install -y socat git wget unzip vim

Schakel SELinux en Firewall uit.

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

Installeer PHP

Stel de Webtatic YUM-repo in.

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

Installeer PHP en vereiste PHP-extensies.

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

Controleer de versie.

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

Start en schakel PHP-FPM in.

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

Rennen sudo vim /etc/php.inien instellen memory_limitop 1024Mof meer, en instellen date.timezone.

memory_limit = 1024M
date.timezone = Region/City

Start PHP-FPM opnieuw.

sudo systemctl restart php-fpm.service

Installeer MariaDB en maak een database aan

Installeer de MariaDB-databaseserver.

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

Controleer de versie.

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

Start en schakel MariaDB in.

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

Voer een mysql_secure installationscript uit om de MariaDB-beveiliging te verbeteren en stel het wachtwoord in voor de MariaDB- rootgebruiker.

sudo mysql_secure_installation

Maak verbinding met de MariaDB-shell als rootgebruiker.

sudo mysql -u root -p
# Enter password

Maak een lege MariaDB-database en gebruiker voor Sylius en onthoud de inloggegevens.

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

OPMERKING: vervang dbnameen usernamemet de juiste namen voor uw installatie. Vervang passworddoor een sterk wachtwoord.

Installeer Nginx

Installeer Nginx.

sudo yum install -y nginx

Controleer de versie.

nginx -v
# nginx version: nginx/1.12.2

Start en schakel Nginx in.

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

Configureer Nginx voor Sylius. Voer sudo vim /etc/nginx/conf.d/sylius.confhet bestand uit en vul het in met de volgende configuratie.

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

Sla het bestand op en sluit af met :+ W+ Q.

Test de configuratie.

sudo nginx -t

Herlaad Nginx.

sudo systemctl reload nginx.service

Installeer Composer

Installeer Composer wereldwijd.

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

Controleer de versie.

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

Installeer Node.js

Installeer 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

Controleer de versie.

node --version
# v10.16.3

Installeer garen

Installeer de Yarn-pakketbeheerder.

curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install -y yarn

Controleer de versie.

yarn --version
# 1.17.3

Installeer Sylius

Maak een documenthoofdmap.

sudo mkdir -p /var/www/sylius

Verander het eigendom van de /var/www/syliusdirectory in johndoe.

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

Navigeer naar de hoofdmap van het document.

cd /var/www/sylius

Start een nieuw Sylius-project door deze opdracht uit te voeren:

composer create-project sylius/sylius-standard .

Uitvoeren vim .env.localom databasegegevens in te voeren en Sylius in een omgeving naar keuze uit te voeren.

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

OPMERKING: Vervang username, passworden dbnamemet uw database details.

Nadat alles op zijn plaats is, voert u de volgende opdracht uit om Sylius te installeren:

php bin/console sylius:install -e prod 

Om een ​​volledig functionele front-end te zien, moet u de middelen ervan installeren. Sylius gebruikt Gulp om front-end assets te bouwen met Yarn als JavaScript-pakketbeheerder. Nadat Yarn is geïnstalleerd, gaat u naar uw projectdirectory om de afhankelijkheden te installeren.

yarn install

Bouw vervolgens de front-end assets door te draaien:

yarn build

Verander het eigendom van de /var/www/syliusdirectory in nginx.

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

Ren sudo vim /etc/php-fpm.d/www.confen stel de gebruiker en de groep in op nginx. Aanvankelijk zullen ze worden ingesteld op apache.

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

Maak een /var/lib/php/session/directory en wijzig het eigendom in nginx.

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

Start de PHP-FPM-service opnieuw.

sudo systemctl restart php-fpm.service

Het Sylius e-commerceplatform is geïnstalleerd. Standaard leidt het beheerderspaneel naar /admin.



Leave a Comment

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.