[In de bedrijfsruimten]{class="badge informative" title="Alleen van toepassing op Adobe Commerce-projecten ter plaatse."}

Nginx installeren voor implementaties op locatie nginx

Deze gids begeleidt u door het installeren van Nginx voor Adobe Commerce op-gebouw plaatsingen en het vormen van de montages van Nginx die Commerce vereist. Het bevat besturingssysteemspecifieke procedures voor Ubuntu en CentOS, samen met richtlijnen voor het configureren van PHP-FPM. Adobe raadt u aan de configuratie-instructies in deze handleiding op te volgen om zowel de functionaliteit als de beveiliging van de Commerce-toepassing te behouden.

Adobe steunt de versies van Nginx die in de ​ systeemvereisten ​ voor uw versie van Adobe Commerce worden vermeld. Ondersteunde versies verschillen per release. Nginx vereist ook een ondersteunde PHP-FPM configuratie. Voor verwante PHP vereisten, zie ​ PHP ​.

Installeren op Ubuntu

Gebruik deze sectie om Adobe Commerce op Ubuntu met Nginx, PHP en MySQL te installeren.

Nginx installeren

sudo apt -y install nginx

U kunt ook ​ Nginx van bron ​ bouwen.

Nadat u de volgende secties voltooit en de toepassing installeert, gebruik het dossier van de steekproefconfiguratie om ​ te vormen Nginx ​. Bij deze aanbevolen configuratie blijven zowel de functionaliteit als de beveiliging van de Commerce-toepassing behouden.

PHP-FPM installeren en configureren

Adobe Commerce vereist verscheidene ​ PHP uitbreidingen ​ om behoorlijk te functioneren. Naast deze extensies moet u ook de extensie php-fpm installeren en configureren als u Nginx gebruikt.

U installeert en configureert php-fpm als volgt:

  1. Installeer de pakketten php-fpm en php-cli voor de PHP-versie die door de Adobe Commerce-versie wordt ondersteund. Bij Ubuntu volgen de pakketnamen doorgaans het volgende patroon:

    code language-bash
    apt-get -y install php<php-version>-fpm php<php-version>-cli
    
    note note
    NOTE
    Vervang <php-version> met gesteunde PHP minder belangrijke die versie in ​ systeemvereisten ​ voor de versie van Adobe Commerce wordt vermeld u installeert. Gebruik in de volgende stappen dezelfde waarde in de bestandspaden, de servicenaam en het socketpad.
  2. Open de php.ini bestanden in een editor:

    code language-bash
    vim /etc/php/<php-version>/fpm/php.ini
    
    code language-bash
    vim /etc/php/<php-version>/cli/php.ini
    
  3. Bewerk beide bestanden om deze af te stemmen op de volgende regels:

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe raadt u aan de geheugenlimiet in te stellen op 2 GB wanneer u Adobe Commerce test. Verwijs naar ​ Vereiste PHP montages ​ voor meer informatie.
  4. Sla de editor op en sluit deze af.

  5. Start de service php-fpm opnieuw:

    code language-bash
    systemctl restart php<php-version>-fpm
    

MySQL installeren en configureren

Verwijs naar ​ MySQL ​ voor meer informatie.

Adobe Commerce installeren

U kunt Adobe Commerce op verschillende manieren downloaden:

In dit voorbeeld ziet u een op composers gebaseerde installatie die de opdrachtregel gebruikt.

  1. Als ​ eigenaar van het dossiersysteem ​, login aan uw toepassingsserver.

  2. Wijzig de hoofdmap van de webserver of een map die u hebt geconfigureerd als een virtueel hoofddocument van de host. In dit voorbeeld gebruiken we de standaardinstelling Ubuntu /var/www/html .

    code language-bash
    cd /var/www/html
    
  3. Composer wereldwijd installeren. Composer moet afhankelijkheden bijwerken voordat Adobe Commerce kan worden geïnstalleerd:

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Maak een Composer-project met het Adobe Commerce-metapakket.

    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>
    

    Wanneer ertoe aangezet, ga uw ​ authentificatietoetsen ​ in. Uw openbare sleutel is uw gebruikersbenaming; uw privé sleutel is uw wachtwoord.

  5. Stel lees- en schrijfmachtigingen in voor de webservergroep voordat u de toepassing installeert. Dit is nodig, zodat de opdrachtregel bestanden naar het bestandssysteem kan schrijven.

    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. Installeer van de ​ bevellijn ​. In dit voorbeeld wordt ervan uitgegaan dat de installatiemap magento2ee heet en dat de databasehost zich op dezelfde computer bevindt (localhost):

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=<db-name> \
    --db-user=<db-user> \
    --db-password=<db-password> \
    --backend-frontname=<backend-uri> \
    --admin-firstname=<admin-first-name> \
    --admin-lastname=<admin-last-name> \
    --admin-email=<admin-email> \
    --admin-user=<admin-user> \
    --admin-password=<admin-password> \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1 \
    --search-engine=<search-engine-value> \
    --<search-engine-host-parameter>=search-host.example.com \
    --<search-engine-port-parameter>=9200
    
    note note
    NOTE
    Gebruik de --search-engine -waarde en overeenkomende host-/poortopties die zijn vereist voor de Adobe Commerce-release die u installeert. Voor versies ouder dan 2.4.6 gebruikt u elasticsearch7 met de --elasticsearch-* -opties voor Elasticsearch 7 of OpenSearch. Voor versie 2.4.6 en later, gebruik de waarde van de onderzoeksmotor en de overeenkomstige CLI opties die door die versie worden gesteund.
  7. Overschakelen naar de modus Ontwikkelaar:

    code language-bash
    cd /var/www/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

Nginx configureren

Adobe raadt u aan om Nginx te configureren met behulp van het nginx.conf.sample -configuratiebestand in de installatiemap en uw Nginx Virtual Host-configuratie, zodat zowel de functionaliteit als de beveiliging van de Commerce-toepassing behouden blijven.

IMPORTANT
Het nginx.conf.sample dossier verstrekt vereiste toepassing verpletterend evenals veiligheid-verhardende regels. Het beperkt bijvoorbeeld de uitvoering van schadelijke scripts die naar de server worden geüpload. Als u dit dossier niet gebruikt of zijn regels wijzigt, bent u verantwoordelijk voor het uitvoeren van gelijkwaardige veiligheidscontroles in uw configuratie van douanenx.

In deze instructies wordt ervan uitgegaan dat u de standaardlocatie Ubuntu voor de virtuele Nginx-host gebruikt, zoals /etc/nginx/sites-available , en de standaarddocroot Ubuntu, zoals /var/www/html . U kunt deze locaties aanpassen aan uw omgeving.

  1. Maak een nieuwe virtuele host voor uw site:

    code language-bash
    vim /etc/nginx/sites-available/magento
    
  2. Voeg de volgende configuratie toe:

    code language-conf
    upstream fastcgi_backend {
      server  unix:/run/php/php<php-version>-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
    De instructie include moet verwijzen naar het voorbeeldconfiguratiebestand voor nginx in de installatiemap.
  3. Vervang www.magento-dev.com door uw domeinnaam. Dit moet overeenkomen met de basis-URL die u hebt opgegeven bij de installatie van Adobe Commerce.

  4. Sla de editor op en sluit deze af.

  5. Activeer de nieuwe virtuele host door er een symlink naar te maken in de map /etc/nginx/sites-enabled :

    code language-bash
    ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
    
  6. Controleer of de syntaxis correct is:

    code language-bash
    nginx -t
    
  7. Nginx opnieuw starten:

    code language-bash
    systemctl restart nginx
    

De installatie controleren

Als u de installatie wilt controleren, opent u een webbrowser en navigeert u naar de basis-URL van uw site. Voor meer informatie, zie ​ de installatie ​ verifiëren.

Installeren op CentOS 7

Gebruik deze sectie om Adobe Commerce te installeren op CentOS 7 met Nginx, PHP en MySQL.

Nginx installeren

yum -y install epel-release
yum -y install nginx

Start nginx nadat de installatie is voltooid en configureer deze om te starten op het moment van opstarten:

systemctl start nginx
systemctl enable nginx

Nadat u de volgende secties voltooit en de toepassing installeert, gebruik een dossier van de steekproefconfiguratie om Nginx te vormen.

PHP-FPM installeren en configureren

Adobe Commerce vereist verscheidene ​ PHP ​ uitbreidingen om behoorlijk te functioneren. Naast deze extensies moet u ook de extensie php-fpm installeren en configureren als u Nginx gebruikt.

  1. Installeren php-fpm:

    code language-bash
    yum -y install <php-fpm-package>
    
  2. Open het /etc/php.ini -bestand in een editor.

    note note
    NOTE
    Installeer het pakket met php-fpm de PHP-versie die wordt ondersteund door de Adobe Commerce-versie die u installeert. Pakketnamen variëren per opslagplaats en besturingssysteem. Zie ​ systeemvereisten ​.
  3. Verwijder de commentaarmarkering van de regel cgi.fix_pathinfo en wijzig de waarde in 0 .

  4. Bewerk het bestand zodat dit overeenkomt met de volgende regels:

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe raadt u aan de geheugenlimiet in te stellen op 2 GB wanneer u Adobe Commerce test. Verwijs naar ​ Vereiste PHP montages ​ voor meer informatie.
  5. Verwijder de commentaarmarkering van de map met het sessiepad en stel het pad in:

    code language-conf
    session.save_path = "/var/lib/php/session"
    
  6. Sla de editor op en sluit deze af.

  7. Open /etc/php-fpm.d/www.conf in een editor.

  8. Bewerk het bestand zodat dit overeenkomt met de volgende regels:

    code language-conf
    user = nginx
    group = nginx
    listen = /run/php-fpm/php-fpm.sock
    listen.owner = nginx
    listen.group = nginx
    listen.mode = 0660
    
  9. Verwijder de commentaarmarkering van de omgevingsregels:

    code language-conf
    env[HOSTNAME] = $HOSTNAME
    env[PATH] = /usr/local/bin:/usr/bin:/bin
    env[TMP] = /tmp
    env[TMPDIR] = /tmp
    env[TEMP] = /tmp
    
  10. Sla de editor op en sluit deze af.

  11. Maak een map voor het PHP-sessiepad en wijzig de eigenaar in nginx user and group:

    code language-bash
    mkdir -p /var/lib/php/session/
    
    code language-bash
    chown -R nginx:nginx /var/lib/php/
    
  12. Maak een directory voor de PHP-FPM socket en verander de eigenaar in de nginx user and group:

    code language-bash
    mkdir -p /run/php-fpm/
    
    code language-bash
    chown -R nginx:nginx /run/php-fpm/
    
  13. Start de php-fpm -service en configureer deze zo dat deze op het moment van opstarten start:

    code language-bash
    systemctl start php-fpm
    
    code language-bash
    systemctl enable php-fpm
    
  14. Controleer of de service php-fpm wordt uitgevoerd:

    code language-bash
    netstat -pl | grep php-fpm.sock
    

MySQL installeren en configureren

Verwijs naar ​ MySQL ​ voor meer informatie.

Adobe Commerce installeren

U kunt Adobe Commerce op verschillende manieren downloaden:

In dit voorbeeld ziet u een op composers gebaseerde installatie die de opdrachtregel gebruikt.

  1. Als ​ eigenaar van het dossiersysteem ​, login aan uw toepassingsserver.

  2. Wijzig de hoofdmap van de webserver of een map die u hebt geconfigureerd als een virtueel hoofddocument van de host. In dit voorbeeld gebruikt u de CentOS-standaardinstelling /usr/share/nginx/html .

    code language-bash
    cd /usr/share/nginx/html
    
  3. Composer wereldwijd installeren. Composer moet afhankelijkheden bijwerken voordat Adobe Commerce kan worden geïnstalleerd:

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Maak een Composer-project met het Adobe Commerce-metapakket.

    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>
    

    Wanneer ertoe aangezet, ga uw ​ authentificatietoetsen ​ in. Uw openbare sleutel is uw gebruikersbenaming; uw privé sleutel is uw wachtwoord.

  5. Stel lees- en schrijfmachtigingen in voor de webservergroep voordat u de toepassing installeert. Dit is nodig, zodat de opdrachtregel bestanden naar het bestandssysteem kan schrijven.

    code language-bash
    cd /usr/share/nginx/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 :nginx . # CentOS
    
    code language-bash
    chmod u+x bin/magento
    
  6. Installeer van de ​ bevellijn ​. In dit voorbeeld wordt ervan uitgegaan dat de installatiemap magento2ee heet en dat de databasehost zich op dezelfde computer bevindt (localhost):

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=<db-name> \
    --db-user=<db-user> \
    --db-password=<db-password> \
    --backend-frontname=<backend-uri> \
    --admin-firstname=<admin-first-name> \
    --admin-lastname=<admin-last-name> \
    --admin-email=<admin-email> \
    --admin-user=<admin-user> \
    --admin-password=<admin-password> \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1
    
  7. Overschakelen naar de modus Ontwikkelaar:

    code language-bash
    cd /usr/share/nginx/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

Nginx configureren

We raden u aan om Nginx te configureren met behulp van het nginx.conf.sample -bestand in de installatiemap en uw Nginx virtuele hostconfiguratie.

IMPORTANT
Het nginx.conf.sample dossier verstrekt vereiste toepassing verpletterend evenals veiligheid-verhardende regels. Het beperkt bijvoorbeeld de uitvoering van schadelijke scripts die naar de server worden geüpload. Als u dit dossier niet gebruikt of zijn regels wijzigt, bent u verantwoordelijk voor het uitvoeren van gelijkwaardige veiligheidscontroles in uw configuratie van douanenx.

In deze instructies wordt ervan uitgegaan dat u de standaardlocatie van CentOS voor de virtuele Nginx-host gebruikt, zoals /etc/nginx/conf.d , en de standaarddocroot, zoals /usr/share/nginx/html . U kunt deze locaties aanpassen aan uw omgeving.

  1. Maak een nieuwe virtuele host voor uw site:

    code language-bash
    vim /etc/nginx/conf.d/magento.conf
    
  2. Voeg de volgende configuratie toe:

    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
    De instructie include moet verwijzen naar het voorbeeldconfiguratiebestand voor nginx in de installatiemap.
  3. Vervang www.magento-dev.com door uw domeinnaam.

  4. Sla de editor op en sluit deze af.

  5. Controleer of de syntaxis correct is:

    code language-bash
    nginx -t
    
  6. Nginx opnieuw starten:

    code language-bash
    systemctl restart nginx
    

SELinux en firewalld configureren

SELinux is standaard ingeschakeld in CentOS 7. Gebruik de volgende opdracht om te bevestigen dat deze wordt uitgevoerd:

sestatus

Om SELinux en firewalld te vormen:

  1. SELinux-beheertools installeren:

    code language-bash
    yum -y install policycoreutils-python
    
  2. Voer de volgende opdrachten uit om de beveiligingscontext voor de installatiemap te wijzigen:

    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. Installeer het firewalld-pakket:

    code language-bash
    yum -y install firewalld
    
  4. Start de firewallservice en configureer deze zo dat deze op het moment van opstarten start:

    code language-bash
    systemctl start firewalld
    
    code language-bash
    systemctl enable firewalld
    
  5. Voer de volgende opdrachten uit om poorten voor HTTP en HTTPS te openen, zodat u de basis-URL vanuit een webbrowser kunt openen:

    code language-bash
    firewall-cmd --permanent --add-service=http
    
    code language-bash
    firewall-cmd --permanent --add-service=https
    
    code language-bash
    firewall-cmd --reload
    

De installatie controleren

Als u de installatie wilt controleren, opent u een webbrowser en navigeert u naar de basis-URL van uw site. Voor meer informatie, zie ​ de installatie ​ verifiëren.

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