Nginx
Adobe Commerce unterstützt nginx 1.x (oder das aktuelle Hauptversion). Sie müssen auch die neueste Version von php-fpm
.
Installationsanweisungen variieren je nach verwendetem Betriebssystem. Siehe PHP für Informationen.
Ubuntu
Im folgenden Abschnitt wird beschrieben, wie Sie Adobe Commerce 2.x auf Ubuntu mit nginx, PHP und MySQL installieren.
Installieren von nginx
sudo apt -y install nginx
Sie können auch Build-Nginx aus Quelle
Nach Abschluss der folgenden Abschnitte und Installation der Anwendung wird eine Beispielkonfigurationsdatei für nginx konfigurieren.
php-fpm installieren und konfigurieren
Adobe Commerce erfordert mehrere PHP-Erweiterungen ordnungsgemäß funktionieren. Zusätzlich zu diesen Erweiterungen müssen Sie auch die php-fpm
-Erweiterung, wenn Sie nginx verwenden.
Installieren und Konfigurieren php-fpm
:
-
Installieren
php-fpm
undphp-cli
:code language-bash apt-get -y install php7.2-fpm php7.2-cli
note note NOTE Dieser Befehl installiert die neueste Version von PHP 7.2.X. Siehe Systemanforderungen für unterstützte PHP-Versionen. -
Öffnen Sie die
php.ini
-Dateien in einem Editor:code language-bash vim /etc/php/7.2/fpm/php.ini
code language-bash vim /etc/php/7.2/cli/php.ini
-
Bearbeiten Sie beide Dateien entsprechend den folgenden Zeilen:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Es wird empfohlen, die Speicherbegrenzung beim Testen von Adobe Commerce auf 2 G festzulegen. Siehe Abschnitt Erforderliche PHP-Einstellungen für weitere Informationen. -
Speichern und beenden Sie den Editor.
-
Starten Sie den
php-fpm
-Dienst:code language-bash systemctl restart php7.2-fpm
MySQL installieren und konfigurieren
Siehe Abschnitt MySQL für weitere Informationen.
Installieren und Konfigurieren
Es gibt mehrere Möglichkeiten, Adobe Commerce herunterzuladen, darunter:
Dieses Beispiel zeigt eine Composer-basierte Installation mithilfe der Befehlszeile.
-
Als Dateisysteminhaber, melden Sie sich bei Ihrem Anwendungsserver an.
-
Wechseln Sie zum Basisverzeichnis des Webservers oder zu einem Ordner, den Sie als virtuelles Host-Basisverzeichnis konfiguriert haben. Für dieses Beispiel verwenden wir die Ubuntu-Standardeinstellung
/var/www/html
.code language-bash cd /var/www/html
-
Installieren Sie Composer global. Der Composer muss die Abhängigkeiten vor der Installation von Adobe Commerce aktualisieren:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Erstellen Sie ein Composer-Projekt mit dem Adobe Commerce-Metapaket.
Magento Open Source
code language-bash composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
Adobe Commerce
code language-bash composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
Geben Sie bei Aufforderung Ihre Authentifizierungsschlüssel. Ihre öffentlicher Schlüssel ist Ihr Benutzername; Ihr privater Schlüssel ist Ihr Passwort.
-
Legen Sie Lese- und Schreibberechtigungen für die Webservergruppe fest, bevor Sie die Anwendung installieren. Dies ist erforderlich, damit die Befehlszeile Dateien in das Dateisystem schreiben kann.
code language-bash cd /var/www/html/<magento install directory>
code language-bash find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
code language-bash find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
code language-bash chown -R :www-data . # Ubuntu
code language-bash chmod u+x bin/magento
-
Installieren Sie aus dem Befehlszeile. In diesem Beispiel wird davon ausgegangen, dass der Installationsordner
magento2ee
, diedb-host
auf demselben Computer (localhost
) und dass diedb-name
,db-user
, unddb-password
allemagento
:code language-bash bin/magento setup:install \ --base-url=http://localhost/magento2ee \ --db-host=localhost \ --db-name=magento \ --db-user=magento \ --db-password=magento \ --backend-frontname=admin \ --admin-firstname=admin \ --admin-lastname=admin \ --admin-email=admin@admin.com \ --admin-user=admin \ --admin-password=admin123 \ --language=en_US \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --search-engine=elasticsearch7 \ --elasticsearch-host=es-host.example.com \ --elasticsearch-port=9200
-
Wechseln Sie in den Entwicklermodus:
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Konfigurieren von nginx
Es wird empfohlen, nginx mit der nginx.conf.sample
Konfigurationsdatei, die im Installationsverzeichnis und nginx virtual host bereitgestellt wird.
Diese Anweisungen gehen davon aus, dass Sie den Standardspeicherort von Ubuntu für den nginx-virtuellen Host verwenden (z. B. /etc/nginx/sites-available
) und Ubuntu-Standarddocroot (z. B. /var/www/html
) können Sie diese Speicherorte jedoch an Ihre Umgebung anpassen.
-
Erstellen Sie einen neuen virtuellen Host für Ihre Site:
code language-bash vim /etc/nginx/sites-available/magento
-
Fügen Sie die folgende Konfiguration hinzu:
code language-conf upstream fastcgi_backend { server unix:/run/php/php7.2-fpm.sock; } server { listen 80; server_name www.magento-dev.com; set $MAGE_ROOT /var/www/html/magento2; include /var/www/html/magento2/nginx.conf.sample; }
note note NOTE Die include
-Anweisung muss auf die Beispielkonfigurationsdatei nginx in Ihrem Installationsverzeichnis verweisen. -
Ersetzen
www.magento-dev.com
mit Ihrem Domänennamen. Diese muss mit der Basis-URL übereinstimmen, die Sie bei der Installation von Adobe Commerce angegeben haben. -
Speichern und beenden Sie den Editor.
-
Aktivieren Sie den neu erstellten virtuellen Host, indem Sie im
/etc/nginx/sites-enabled
directory:code language-bash ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
-
Überprüfen Sie, ob die Syntax korrekt ist:
code language-bash nginx -t
-
Starten Sie nginx neu:
code language-bash systemctl restart nginx
Installation überprüfen
Öffnen Sie einen Webbrowser und navigieren Sie zur Basis-URL Ihrer Site zu die Installation überprüfen.
CentOS 7
Im folgenden Abschnitt wird beschrieben, wie Sie Adobe Commerce 2.x unter CentOS 7 mit nginx, PHP und MySQL installieren.
Installieren von nginx
yum -y install epel-release
yum -y install nginx
Nachdem die Installation abgeschlossen ist, starten Sie nginx und konfigurieren Sie es so, dass es zum Startzeitpunkt startet:
systemctl start nginx
systemctl enable nginx
Nach Abschluss der folgenden Abschnitte und der Installation der Anwendung wird eine Beispielkonfigurationsdatei zum Konfigurieren von nginx verwendet.
php-fpm installieren und konfigurieren
Adobe Commerce erfordert mehrere PHP -Erweiterungen ordnungsgemäß funktionieren. Zusätzlich zu diesen Erweiterungen müssen Sie auch die php-fpm
-Erweiterung, wenn Sie nginx verwenden.
-
Installieren
php-fpm
:code language-bash yum -y install php70w-fpm
-
Öffnen Sie die
/etc/php.ini
in einem Editor. -
Entfernen Sie den Kommentar
cgi.fix_pathinfo
und ändern Sie den Wert in0
. -
Bearbeiten Sie die Datei entsprechend den folgenden Zeilen:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Es wird empfohlen, die Speicherbegrenzung beim Testen von Adobe Commerce auf 2 G festzulegen. Siehe Abschnitt Erforderliche PHP-Einstellungen für weitere Informationen. -
Heben Sie den Kommentar für den Sitzungspfadordner auf und legen Sie den Pfad fest:
code language-conf session.save_path = "/var/lib/php/session"
-
Speichern und beenden Sie den Editor.
-
Öffnen
/etc/php-fpm.d/www.conf
in einem Editor. -
Bearbeiten Sie die Datei entsprechend den folgenden Zeilen:
code language-conf user = nginx group = nginx listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660
-
Entfernen Sie den Kommentar für die Umgebungszeilen:
code language-conf env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp
-
Speichern und beenden Sie den Editor.
-
Erstellen Sie ein Verzeichnis für den Pfad der PHP-Sitzung und ändern Sie den Eigentümer in den
apache
Benutzer und Gruppe:code language-bash mkdir -p /var/lib/php/session/
code language-bash chown -R apache:apache /var/lib/php/
-
Erstellen Sie ein Verzeichnis für den Pfad der PHP-Sitzung und ändern Sie den Eigentümer in den
apache
Benutzer und Gruppe:code language-bash mkdir -p /run/php-fpm/
code language-bash chown -R apache:apache /run/php-fpm/
-
Starten Sie die
php-fpm
Dienst und konfigurieren Sie ihn so, dass er beim Start gestartet wird:code language-bash systemctl start php-fpm
code language-bash systemctl enable php-fpm
-
Stellen Sie sicher, dass
php-fpm
-Dienst wird ausgeführt:code language-bash netstat -pl | grep php-fpm.sock
MySQL installieren und konfigurieren
Siehe Abschnitt MySQL für weitere Informationen.
Installieren und Konfigurieren
Es gibt mehrere Möglichkeiten, die Adobe Commerce herunterzuladen, darunter:
Dieses Beispiel zeigt eine Composer-basierte Installation mithilfe der Befehlszeile.
-
Als Dateisysteminhaber, melden Sie sich bei Ihrem Anwendungsserver an.
-
Wechseln Sie zum Basisverzeichnis des Webservers oder zu einem Ordner, den Sie als virtuelles Host-Basisverzeichnis konfiguriert haben. Für dieses Beispiel verwenden wir die Ubuntu-Standardeinstellung
/var/www/html
.code language-bash cd /var/www/html
-
Installieren Sie Composer global. Der Composer muss die Abhängigkeiten vor der Installation von Adobe Commerce aktualisieren:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Erstellen Sie ein Composer-Projekt mit dem Adobe Commerce-Metapaket.
Magento Open Source
code language-bash composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
Adobe Commerce
code language-bash composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
Geben Sie bei Aufforderung Ihre Authentifizierungsschlüssel. Ihre öffentlicher Schlüssel ist Ihr Benutzername; Ihr privater Schlüssel ist Ihr Passwort.
-
Legen Sie Lese- und Schreibberechtigungen für die Webservergruppe fest, bevor Sie die Anwendung installieren. Dies ist erforderlich, damit die Befehlszeile Dateien in das Dateisystem schreiben kann.
code language-bash cd /var/www/html/<magento install directory>
code language-bash find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
code language-bash find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
code language-bash chown -R :www-data . # Ubuntu
code language-bash chmod u+x bin/magento
-
Installieren Sie aus dem Befehlszeile. In diesem Beispiel wird davon ausgegangen, dass der Installationsordner
magento2ee
, diedb-host
auf demselben Computer (localhost
) und dass diedb-name
,db-user
, unddb-password
allemagento
:code language-bash bin/magento setup:install \ --base-url=http://localhost/magento2ee \ --db-host=localhost \ --db-name=magento \ --db-user=magento \ --db-password=magento \ --backend-frontname=admin \ --admin-firstname=admin \ --admin-lastname=admin \ --admin-email=admin@admin.com \ --admin-user=admin \ --admin-password=admin123 \ --language=en_US \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1
-
Wechseln Sie in den Entwicklermodus:
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Konfigurieren von nginx
Es wird empfohlen, nginx mit der nginx.conf.sample
Konfigurationsdatei, die im Installationsverzeichnis und nginx virtual host bereitgestellt wird.
Diese Anweisungen setzen voraus, dass Sie den Standardspeicherort von CentOS für den nginx-virtuellen Host verwenden (z. B. /etc/nginx/conf.d
) und dem Standard-Basisverzeichnis (z. B. /usr/share/nginx/html
) können Sie diese Speicherorte jedoch an Ihre Umgebung anpassen.
-
Erstellen Sie einen neuen virtuellen Host für Ihre Site:
code language-bash vim /etc/nginx/conf.d/magento.conf
-
Fügen Sie die folgende Konfiguration hinzu:
code language-conf upstream fastcgi_backend { server unix:/run/php-fpm/php-fpm.sock; } server { listen 80; server_name www.magento-dev.com; set $MAGE_ROOT /usr/share/nginx/html/magento2; include /usr/share/nginx/html/magento2/nginx.conf.sample; }
note note NOTE Die include
-Anweisung muss auf die Beispielkonfigurationsdatei nginx in Ihrem Installationsverzeichnis verweisen. -
Ersetzen
www.magento-dev.com
mit Ihrem Domänennamen. -
Speichern und beenden Sie den Editor.
-
Überprüfen Sie, ob die Syntax korrekt ist:
code language-bash nginx -t
-
Starten Sie nginx neu:
code language-bash systemctl restart nginx
SELinux und Firewall konfigurieren
SELinux ist in CentOS 7 standardmäßig aktiviert. Verwenden Sie den folgenden Befehl, um zu sehen, ob er ausgeführt wird:
sestatus
So konfigurieren Sie SELinux und firewalld:
-
Installieren Sie die SELinux-Verwaltungstools:
code language-bash yum -y install policycoreutils-python
-
Führen Sie die folgenden Befehle aus, um den Sicherheitskontext für den Installationsordner zu ändern:
code language-bash semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/app/etc(/.*)?'
code language-bash semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/var(/.*)?'
code language-bash semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/media(/.*)?'
code language-bash semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/static(/.*)?'
code language-bash restorecon -Rv '/usr/share/nginx/html/magento2/'
-
Installieren Sie das Paket firewalld :
code language-bash yum -y install firewalld
-
Starten Sie den Firewall-Dienst und konfigurieren Sie ihn so, dass er beim Start gestartet wird:
code language-bash systemctl start firewalld
code language-bash systemctl enable firewalld
-
Führen Sie die folgenden Befehle aus, um Ports für HTTP und HTTPS zu öffnen, damit Sie über einen Webbrowser auf die Basis-URL zugreifen können:
code language-bash firewall-cmd --permanent --add-service=http
code language-bash firewall-cmd --permanent --add-service=https
code language-bash firewall-cmd --reload
Installation überprüfen
Öffnen Sie einen Webbrowser und navigieren Sie zur Basis-URL Ihrer Site zu die Installation überprüfen.