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:

  1. Installieren php-fpm und php-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.
  2. Ö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
    
  3. 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.
  4. Speichern und beenden Sie den Editor.

  5. 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.

  1. Als Dateisysteminhaber, melden Sie sich bei Ihrem Anwendungsserver an.

  2. 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
    
  3. 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
    
  4. 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.

  5. 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
    
  6. Installieren Sie aus dem Befehlszeile. In diesem Beispiel wird davon ausgegangen, dass der Installationsordner magento2ee, die db-host auf demselben Computer (localhost) und dass die db-name, db-user, und db-password alle magento:

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

  1. Erstellen Sie einen neuen virtuellen Host für Ihre Site:

    code language-bash
    vim /etc/nginx/sites-available/magento
    
  2. 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.
  3. 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.

  4. Speichern und beenden Sie den Editor.

  5. 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
    
  6. Überprüfen Sie, ob die Syntax korrekt ist:

    code language-bash
    nginx -t
    
  7. 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.

  1. Installieren php-fpm:

    code language-bash
    yum -y install php70w-fpm
    
  2. Öffnen Sie die /etc/php.ini in einem Editor.

  3. Entfernen Sie den Kommentar cgi.fix_pathinfo und ändern Sie den Wert in 0.

  4. 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.
  5. 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"
    
  6. Speichern und beenden Sie den Editor.

  7. Öffnen /etc/php-fpm.d/www.conf in einem Editor.

  8. 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
    
  9. 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
    
  10. Speichern und beenden Sie den Editor.

  11. 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/
    
  12. 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/
    
  13. 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
    
  14. 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.

  1. Als Dateisysteminhaber, melden Sie sich bei Ihrem Anwendungsserver an.

  2. 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
    
  3. 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
    
  4. 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.

  5. 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
    
  6. Installieren Sie aus dem Befehlszeile. In diesem Beispiel wird davon ausgegangen, dass der Installationsordner magento2ee, die db-host auf demselben Computer (localhost) und dass die db-name, db-user, und db-password alle magento:

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

  1. Erstellen Sie einen neuen virtuellen Host für Ihre Site:

    code language-bash
    vim /etc/nginx/conf.d/magento.conf
    
  2. 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.
  3. Ersetzen www.magento-dev.com mit Ihrem Domänennamen.

  4. Speichern und beenden Sie den Editor.

  5. Überprüfen Sie, ob die Syntax korrekt ist:

    code language-bash
    nginx -t
    
  6. 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:

  1. Installieren Sie die SELinux-Verwaltungstools:

    code language-bash
    yum -y install policycoreutils-python
    
  2. 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/'
    
  3. Installieren Sie das Paket firewalld :

    code language-bash
    yum -y install firewalld
    
  4. 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
    
  5. 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.

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995