GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

So installieren Sie Magento 2.4 mit LEMP Stack auf Ubuntu 20.04

In dieser Anleitung zeigen wir Ihnen, wie Sie Magento 2.4 mit LEMP-Stack auf einem Ubuntu 20.04 VPS installieren.

Magento ist dank seiner Anpassungsfähigkeit und Flexibilität eine der beliebtesten verfügbaren Open-Source-E-Commerce-Plattformen. Es wird mit dem Zend Framework erstellt und verwendet MySQL als Datenbankverwaltungssystem. Magento bietet Online-Händlern einen sehr flexiblen Warenkorb und verfügt über eine Vielzahl von Funktionen, die es zu einer ausgezeichneten Wahl für Unternehmen machen, die problemlos einen Online-Stopp einrichten möchten.

Installieren von Magento 2.4 mit einem LEMP-Stack auf Ubuntu 20.04 sollte weniger als 10 Minuten dauern. Beginnen wir mit dem Tutorial.

Voraussetzungen

  • Ein Ubuntu 20.04 VPS mit aktiviertem Root-Zugriff oder ein Benutzer mit sudo-Berechtigungen
  • 4 GB RAM oder mehr
  • Nginx
  • MariaDB 10.4
  • Elasticsearch 7.6.x, weil Magento 2.4 mit dieser Version getestet wird
  • PHP 7.4 mit aktivierten Erweiterungen bcmath, ctype, curl, dom, gd, hash, iconv, intl, libxml, mbstring, openssl, pdo_mysql, simplexml, soap, xsl und zip. Außerdem ist es aus Leistungsgründen eine gute Idee, die Opcache-Erweiterung zu installieren und zu aktivieren.
  • Ein gültiger Domänenname für den Zugriff auf die Magento 2-Website. Außerdem ist für den Zugriff auf die Website über HTTPS ein gültiges SSL-Zertifikat erforderlich.

Wenn Sie keinen LEMP-Stack eingerichtet haben (Nginx, MariaDB, PHP), kein Problem – wir werden in diesem Tutorial auch behandeln, wie man diesen installiert.

Erste Schritte

Zuerst müssen wir uns mit SSH bei unserem Server anmelden. Sie können dies tun, indem Sie diesen Befehl eingeben:

ssh root@IP_Address -p Port_number

Ersetzen Sie „root“ bei Bedarf durch einen Benutzer mit sudo-Berechtigungen. Ersetzen Sie außerdem „IP_Address“ und „Port_Number“ durch die entsprechende IP-Adresse und SSH-Portnummer Ihres Servers.

Sobald Sie angemeldet sind, sollten Sie alle Ihre Ubuntu OS-Pakete auf die neuesten verfügbaren Versionen aktualisieren.

apt-get update 
apt-get upgrade

Sobald alle Betriebssystempakete auf dem neuesten Stand sind, starten Sie Ihren Server neu, falls erforderlich, um neue Konfigurationsänderungen zu übernehmen.

LEMP und Elasticsearch installieren

LEMP ist ein Akronym, das ein Linux-Betriebssystem mit Nginx, MySQL (oder MariaDB) und PHP beschreibt. Es ist ein allgemeiner Stapel von Anwendungen und Servern, der die Grundlage für viele Softwarepakete bilden kann. Lassen Sie uns LEMP auf unserem Ubuntu 20.04 VPS installieren.

Nginx installieren

Wenn bereits ein Apache-Webserver auf dem Server installiert ist, halten Sie den Apache-Dienst an und deaktivieren Sie, dass er beim Booten des Servers gestartet wird:

systemctl stop apache2
systemctl disable apache2

Installieren Sie Nginx mit dem folgenden Befehl:

apt-get install nginx

Das ist vorerst alles, was wir mit Nginx tun müssen.

Installieren Sie MySQL

Als nächstes installieren wir den MySQL-Datenbankserver, der zum Speichern der Daten unserer Magento-Website verwendet wird, z. B. Produkte, Kategorien, Kunden und Bestellungen.
Für die Zwecke dieses Tutorials werden wir MariaDB installieren und verwenden. Um den MariaDB-Datenbankserver zu installieren, geben Sie die folgenden Befehle ein:

apt-get install software-properties-common

Wir müssen einen Schlüssel hinzufügen, um unser MariaDB-Repository hinzuzufügen.

apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Jetzt, da wir den Schlüssel haben, installieren wir das Repository:

add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.lstn.net/mariadb/repo/10.4/ubuntu bionic main'

Aktualisieren Sie Ihre APT-Repositorys, damit die Paketlisten gelesen werden.

apt update

Schließlich können wir MariaDB installieren.

apt install mariadb-server

Aktivieren Sie nach der Installation von MariaDB den MariaDB-Dienst so, dass er beim Serverstart gestartet wird:

systemctl enable mariadb.service

Überprüfen Sie den Status des MariaDB-Dienstes:

systemctl status mariadb.service

Es sollte laufen. Das ist im Moment alles, was wir mit MariaDB tun müssen.

Installieren Sie Elasticsearch

Wechseln Sie in ein Verzeichnis, in dem Sie eine Datei vorübergehend herunterladen können.

cd /opt

Laden wir die Elasticsearch-Paketdatei herunter.

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.1-amd64.deb

Installieren Sie es, indem Sie diesen nächsten Befehl ausführen:

dpkg -i elasticsearch-7.6.1-amd64.deb

Starten Sie den Elasticsearch-Dienst:

systemctl start elasticsearch

Prüfen Sie den Status:

systemctl status elasticsearch

Überprüfen Sie die Version und andere Informationen zu Elasticsearch:

curl -XGET 'http://localhost:9200'

Wenn bis zu diesem Punkt alles normal aussieht, können wir jetzt PHP installieren.

Installieren Sie PHP 7.4

Fügen Sie das PPA für PHP 7.4 hinzu:

add-apt-repository ppa:ondrej/php

Aktualisieren Sie als Nächstes die OS-Paketliste und installieren Sie PHP 7.4 mit dem folgenden Befehl:

apt-get update
apt-get install php7.4

Installieren Sie alle erforderlichen PHP-Erweiterungen mit dem folgenden Befehl:

apt install php7.4-fpm php7.4-common php7.4-mysql php7.4-gmp php7.4-curl php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-gd php7.4-xml php7.4-cli php7.4-zip php7.4-bcmath

Nachdem die PHP-Erweiterungen auf dem Server installiert wurden, installieren Sie einige andere Betriebssystempakete, die für die Magento 2-Installation erforderlich sind:

apt-get install git curl software-properties-common

Als nächstes öffnen Sie die PHP-Hauptkonfigurationsdatei /etc/php/7.4/fpm/php.ini :

nano /etc/php/7.4/fpm/php.ini

Ändern Sie die folgenden Einstellungen:

file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 256M
cgi.fix_pathinfo = 0
zlib.output_compression = On
upload_max_filesize = 128M
max_execution_time = 600
max_input_time = 900
date.timezone = America/Chicago

Speichern und schließen Sie die PHP-Konfigurationsdatei.

Erstellen Sie eine Datenbank für Magento 2

Sichern Sie Ihre MariaDB-Installation mit mysql_secure_installation Skript. Dieses Skript entfernt anonyme Benutzer, verbietet die Root-Anmeldung aus der Ferne und entfernt die Testdatenbank.

mysql_secure_installation

Wir empfehlen Ihnen, alle Fragen wie folgt zu beantworten:

Enter current password for root (enter for none): Press [Enter] since no password is set by default
Set root password? [Y/n]: N (You can set a password if you like)
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Als Nächstes erstellen wir unseren MySQL-Benutzer und unsere Datenbank für unsere Magento 2-Website. Melden Sie sich mit dem folgenden Befehl bei Ihrem MySQL-Server an und geben Sie Ihr MySQL-Root-Passwort ein, wenn Sie dazu aufgefordert werden:

mysql -u root -p

Um eine neue Datenbank für unsere Magento 2-Instanz zu erstellen, führen Sie die folgenden Befehle aus:

mysql> set global log_bin_trust_function_creators=1;
mysql> CREATE USER 'magento'@'localhost' IDENTIFIED WITH mysql_native_password BY 'strongPassword';
mysql> create database magentodb;
mysql> GRANT ALL PRIVILEGES ON magentodb.* TO 'magento'@'localhost';
mysql> flush privileges;
mysql> quit

Stellen Sie sicher, dass Sie Ihren magento angeben MariaDB-Benutzer ein echtes und starkes Passwort.

Installieren Sie Magento 2

Wir können jetzt mit der Installation von Magento 2 fortfahren. Zum Zeitpunkt der Erstellung dieses Artikels ist die neueste stabile Version von Magento Version 2.4.

Gehen Sie zuerst zum GitHub-Repository und laden Sie die neueste Version von Magento mit dem folgenden Befehl herunter:

mkdir -p /var/www/magento2/
cd /var/www/magento2/
git clone https://github.com/magento/magento2.git /var/www/magento2/

Als nächstes müssen wir Composer installieren, um alle erforderlichen Magento-Komponenten zu installieren. Sie können Composer installieren, indem Sie einfach den folgenden Befehl ausführen:

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer

Führen Sie diese nächsten Befehle aus, um Composer zu konfigurieren.

cd /var/www/magento2
composer install
bin/magento setup:install --base-url=http://yourdomain.com/ --db-host=localhost --db-name=magentodb --db-user=magento --db-password=strongPassword --admin-firstname=FirstName --admin-lastname=LastName [email protected] --admin-user=magentoadmin --admin-password=strong-password --language=en_US --currency=USD --timezone=America/Chicago --use-rewrites=1

Nicht vergessen um den Domänennamen zu ersetzen , Datenbankpasswort , Admin-Benutzername , Passwort und Administrator-E-Mail-Adresse entsprechend.
Sobald die Installation abgeschlossen ist, sollten Sie die folgende Ausgabe erhalten:

[Progress: 699 / 701]
Post installation file permissions check...
For security, remove write permissions from these directories: '/var/www/magento2/app/etc'
[Progress: 700 / 701]
Write installation date...
[Progress: 701 / 701]
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_1k4pc0
Nothing to import.

Merken Sie sich den „Magento Admin URI“. Sie benötigen diese Informationen später, da dies die URL ist, mit der Sie sich beim Magento-Backend anmelden.

Ändern Sie den Eigentümer von magento2 Verzeichnis nach www-data mit folgendem Befehl:

chown -R www-data:www-data /var/www/magento2/

Erstellen Sie eine Nginx-Konfigurationsdatei

Erstellen Sie mit Ihrem Texteditor eine Nginx-Konfigurationsdatei:

nano /etc/nginx/sites-available/magento2

Fügen Sie dann Folgendes als Inhalt der Datei hinzu:

upstream fastcgi_backend {
server unix:/run/php/php7.4-fpm.sock;
}
server {
server_name yourdomain.com;
listen 80;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer; # or production
access_log /var/log/nginx/magento2-access.log;
error_log /var/log/nginx/magento2-error.log;
include /var/www/magento2/nginx.conf.sample;
}

Stellen Sie sicher, dass Sie yourdomain.com festgelegt haben zu Ihrem registrierten Domainnamen.

Entfernen Sie die standardmäßige Nginx-Konfigurationsdatei, wenn sie nicht verwendet wird:

rm -f /etc/nginx/sites-enabled/default

Aktivieren Sie die neu erstellte Nginx-Konfigurationsdatei, testen Sie dann die Nginx-Konfiguration und stellen Sie sicher, dass keine Fehler vorliegen:

ln -s /etc/nginx/sites-available/magento2 /etc/nginx/sites-enabled/magento2
nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Das ist es! Ihr Webserver ist nun erfolgreich konfiguriert.

Installieren Sie ein SSL-Zertifikat

Wir werden ein kostenloses SSL-Zertifikat von Let’s Encrypt installieren. Installieren Sie die erforderlichen Pakete, indem Sie diesen Befehl ausführen:

apt-get install certbot python3-certbot-nginx

Installieren Sie dann ein neues SSL-Zertifikat für Ihren Domainnamen und stellen Sie sicher, dass yourdomain.com auf Ihren registrierten Domainnamen gesetzt ist:

certbot --nginx -d yourdomain.com -d www.yourdomain.com

Bitte wählen Sie „2“ und leiten Sie den HTTP-Datenverkehr auf HTTPS um:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Verwenden Sie die folgenden Magento 2-CLI-Befehle, um die base-url von Magento zu aktualisieren und die base-url-secure Werte:

cd /var/www/magento2/
php bin/magento setup:store-config:set --base-url="https://yourdomain.com/"
php bin/magento setup:store-config:set --base-url-secure="https://yourdomain.com/"

Bearbeiten Sie die Nginx-Konfigurationsdatei und aktivieren Sie HTTP/2:

nano /etc/nginx/sites-enabled/magento2

Ersetzen:

listen 443 ssl;

Mit:

listen 443 ssl http2;

Starten Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

systemctl restart cron.service

Cronjob installieren

Magento benötigt für viele wichtige Systemfunktionen eine Cron-Job-Konfiguration. Lassen Sie uns den folgenden Cronjob erstellen:

crontab -u www-data -e

Fügen Sie dies der Datei hinzu:

* * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log

Speichern und schließen Sie die Datei.

Starten Sie den Cron-Dienst neu:

systemctl restart cron.service

Das ist alles! Magento 2 wurde erfolgreich auf Ihrem Server installiert.

Sie können auf das Magento-Frontend unter http://yourdomain.com zugreifen :

Melden Sie sich beim Magento 2-Backend unter http://yourdomain.com an /Magento-Admin-URI , und konfigurieren Sie Magento nach Ihren Bedürfnissen. Sie können Erweiterungen installieren, Produkte und Kategorien hinzufügen und vieles mehr.

In der heutigen digitalen Welt wird es immer wichtiger, online präsent zu sein. Sie müssen kein Experte für Linux-Systemadministration sein, wenn Sie unser Managed Magento-Hosting nutzen – wir richten alles für Sie ein und warten es, alles in unserem VPS enthalten. Wir können sogar Ihren Server optimieren und alle Ihre Anfragen ausführen. Sie haben immer noch die volle Kontrolle über Ihren Server, müssen sich aber nie wieder Ärger machen.

Wir hoffen, dass dieses Tutorial Ihnen geholfen hat, Magento 2 auf Ihrem Ubuntu 20.04 VPS zu installieren. Wenn dies der Fall ist, ziehen Sie bitte in Betracht, diesen Beitrag über unsere Freigabeverknüpfungen in den sozialen Medien zu teilen, oder hinterlassen Sie unten einen Kommentar mit Fragen oder Vorschlägen, die Sie möglicherweise haben. Danke.


Panels
  1. So installieren Sie LEMP auf Ubuntu 18.04

  2. So installieren Sie Magento auf Ubuntu 18.04

  3. So installieren Sie Nextcloud unter Ubuntu 20.04

  4. So installieren Sie WordPress mit LEMP auf Ubuntu 20.04

  5. So installieren Sie Gitea unter Ubuntu 20.04

So installieren Sie den LEMP-Stack unter Ubuntu 16.04

So installieren Sie den LEMP-Stack (Nginx, MariaDB, PHP7.1) unter Ubuntu 17.10

So installieren Sie LAMP Stack mit PhpMyAdmin in Ubuntu 20.04

So installieren Sie Magento auf Ubuntu 20.04 LTS

So installieren Sie den LEMP-Stack mit PhpMyAdmin in Ubuntu 20.04

So installieren Sie Magento 2.4.3 auf Ubuntu 20.04 mit LAMP