So installieren Sie die Sylius eCommerce Platform unter FreeBSD 12

Sylius ist eine moderne E-Commerce-Plattform für PHP, die auf dem Symfony Framework basiert. Sylius-Quellcode wird auf GitHub gehostet .

Dieses Handbuch führt Sie durch den Sylius-Installationsprozess auf einer neuen FreeBSD 12 Vultr-Instanz mit PHP, MariaDB als Datenbank und Nginx als Webserver.

Bedarf

Um Sylius installieren zu können, benötigen Sie:

  • Vultr-Serverinstanz mit mindestens 2048 MB Speicher.
  • Nginx oder Apache. In diesem Handbuch verwenden wir Nginx.
  • PHP - Version 7.2 oder höher mit einigen spezifischen PHP - Erweiterungen: gd, exif, fileinfo,intl
  • PHP-Konfigurationseinstellungen: memory_limitgleich oder größer als 1024M,date.timezone
  • MySQL Version 5.7 oder 8.0 oder MariaDB-Äquivalent
  • Komponist
  • Node.js
  • Garn

Bevor Sie beginnen

Überprüfen Sie die FreeBSD-Version.

uname -ro
# FreeBSD 12.0-RELEASE

Stellen Sie sicher, dass Ihr FreeBSD-System auf dem neuesten Stand ist.

freebsd-update fetch install
pkg update && pkg upgrade -y

Installieren Sie die erforderlichen Pakete.

pkg install -y sudo vim unzip curl wget bash socat git

Erstellen Sie ein neues Benutzerkonto mit Ihrem bevorzugten Benutzernamen. Wir werden verwenden johndoe.

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Führen Sie den visudoBefehl aus und kommentieren Sie die %wheel ALL=(ALL) ALLZeile aus, damit Mitglieder der wheelGruppe einen beliebigen Befehl ausführen können.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Wechseln Sie nun mit zu Ihrem neu erstellten Benutzer su.

su - johndoe

HINWEIS: Ersetzen Sie johndoedurch Ihren Benutzernamen.

Richten Sie die Zeitzone ein.

sudo tzsetup

Installieren Sie PHP

Installieren Sie PHP und die erforderlichen PHP-Erweiterungen.

sudo pkg install -y php73 php73-mbstring php73-tokenizer php73-pdo php73-pdo_mysql php73-openssl php73-hash php73-json php73-phar php73-filter php73-zlib php73-dom php73-xml php73-xmlwriter php73-xmlreader php73-curl php73-session php73-ctype php73-iconv php73-gd php73-simplexml php73-zip php73-filter php73-tokenizer php73-calendar php73-fileinfo php73-intl php73-phar php73-soap php73-xmlrpc php73-opcache php73-mysqli php73-bcmath php73-gmp php73-exif

Überprüfe die Version.

php --version
# PHP 7.3.8 (cli) (built: Aug  8 2019 01:28:36) ( NTS )

Softlink php.ini-productionzu php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Aktivieren und starten Sie PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Ausführen sudo vim /usr/local/etc/php.iniund memory_limitauf 1024Moder mehr einstellen und einrichten date.timezone.

memory_limit = 1024M
date.timezone = Region/City

Starten Sie PHP-FPM neu.

sudo service php-fpm restart

Installieren Sie MariaDB und erstellen Sie eine Datenbank

Installieren Sie MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Überprüfe die Version.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.25-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Starten und aktivieren Sie MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Führen Sie das mysql_secure installationSkript aus, um die Sicherheit zu verbessern, und legen Sie das Kennwort für den rootBenutzer fest.

sudo mysql_secure_installation

Stellen Sie als Root-Benutzer eine Verbindung zur Shell her.

sudo mysql -u root -p
# Enter password

Erstellen Sie eine leere Datenbank und einen leeren Benutzer für Sylius und merken Sie sich die Anmeldeinformationen.

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

HINWEIS: Ersetzen Sie dbnameund usernamemit geeigneten Namen für Ihr Setup. Durch ein sicheres passwordPasswort ersetzen .

Installieren Sie Nginx

Installieren Sie Nginx.

sudo pkg install -y nginx

Überprüfe die Version.

nginx -v
# nginx version: nginx/1.16.1

Aktivieren und starten Sie Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfigurieren Sie Nginx für Sylius. Führen Sie sudo vim /usr/local/etc/nginx/sylius.confdie Datei mit der folgenden Konfiguration aus und füllen Sie sie.

server {
  listen 80;
  server_name example.com;
  root /usr/local/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;
}

Speichern Sie die Datei und beenden Sie sie mit :+ W+ Q.

Jetzt müssen wir sylius.confin die Hauptdatei aufnehmen nginx.conf.

Führen sudo vim /usr/local/etc/nginx/nginx.confSie die folgende Zeile aus und fügen Sie sie dem http {}Block hinzu.

include sylius.conf;

Testen Sie die Konfiguration.

sudo nginx -t

Laden Sie Nginx neu.

sudo service nginx restart

Installieren Sie Composer

Installieren Sie Composer 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

Überprüfe die Version.

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

Installieren Sie Node.js.

Installieren Sie Node.js.

sudo pkg install -y node

Überprüfe die Version.

node --version
# v12.4.0

Garn einlegen

Installieren Sie den Garnpaket-Manager.

sudo pkg install -y yarn

Überprüfe die Version.

yarn --version
# 1.16.0

Installieren Sie Sylius

Erstellen Sie ein Dokumentstammverzeichnis.

sudo mkdir -p /usr/local/www/sylius

Ändern Sie den Besitz des /usr/local/www/syliusVerzeichnisses in johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/sylius

Navigieren Sie zum Dokumentstammordner.

cd /usr/local/www/sylius

Initiieren Sie ein neues Sylius-Projekt, indem Sie diesen Befehl ausführen:

composer create-project sylius/sylius-standard .

Ausführen vim .env.local, um Datenbankdetails einzugeben und Sylius in einer Umgebung Ihrer Wahl auszuführen.

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

HINWEIS: Ersetzen username, passwordund dbnamemit Ihren Datenbankdetails.

Nachdem alles eingerichtet ist, führen Sie den folgenden Befehl aus, um Sylius zu installieren:

php bin/console sylius:install -e prod 

Um ein voll funktionsfähiges Front-End zu sehen, müssen Sie seine Assets installieren. Sylius verwendet Gulp, um Front-End-Assets mit Yarn als JavaScript-Paketmanager zu erstellen. Nachdem Sie Yarn installiert haben, wechseln Sie in Ihr Projektverzeichnis, um die Abhängigkeiten zu installieren.

yarn install

Erstellen Sie dann die Front-End-Assets, indem Sie Folgendes ausführen:

yarn build

Ändern Sie den Besitz des /usr/local/www/syliusVerzeichnisses in www.

sudo chown -R www:www /usr/local/www/sylius

Erstellen Sie ein /var/lib/php/session/Verzeichnis und ändern Sie den Eigentümer in www.

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

Starten Sie den PHP-FPM-Dienst neu.

sudo service php-fpm restart

Die Sylius E-Commerce-Plattform ist installiert. Standardmäßig leitet das Administrationsfenster an weiter /admin.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.