[Lokalt]{class="badge informative" title="Gäller endast Adobe Commerce lokala projekt."}
Installera Nginx för lokala distributioner nginx
I den här guiden får du hjälp med att installera Nginx för Adobe Commerce lokala distributioner och konfigurera de Nginx-inställningar som Commerce kräver. Det innehåller operativsystemsspecifika procedurer för Ubuntu och CentOS, tillsammans med vägledning för konfiguration av PHP-FPM. Adobe rekommenderar att du följer konfigurationsinstruktionerna i den här handboken för att bevara både funktionaliteten och säkerheten i Commerce-programmet.
Adobe stöder de Nginx-versioner som anges i systemkraven för din Adobe Commerce-version. Versioner som stöds varierar beroende på version. Nginx kräver också en PHP-FPM-konfiguration som stöds. Relaterade PHP-krav finns i PHP.
Installera på Ubuntu
Använd det här avsnittet för att installera Adobe Commerce i Ubuntu med Nginx, PHP och MySQL.
Installera Nginx
sudo apt -y install nginx
Du kan även skapa Nginx från källa.
När du har slutfört följande avsnitt och installerat programmet använder du exempelkonfigurationsfilen för att konfigurera Nginx. Den här rekommenderade konfigurationen bevarar både funktionaliteten och säkerheten för Commerce-programmet.
Installera och konfigurera PHP-FPM
Adobe Commerce kräver flera PHP-tillägg för att fungera korrekt. Utöver dessa tillägg måste du även installera och konfigurera tillägget php-fpm om du använder Nginx.
Installera och konfigurera php-fpm:
-
Installera paketen
php-fpmochphp-cliför den PHP-version som stöds av din Adobe Commerce-version. I Ubuntu följer paketnamnen vanligtvis det här mönstret:code language-bash apt-get -y install php<php-version>-fpm php<php-version>-clinote note NOTE Ersätt <php-version>med den PHP-delversion som stöds som listas i systemkraven för den Adobe Commerce-version som du installerar. Använd samma värde i filsökvägar, tjänstnamn och socketsökväg i följande steg. -
Öppna
php.ini-filerna i en redigerare:code language-bash vim /etc/php/<php-version>/fpm/php.inicode language-bash vim /etc/php/<php-version>/cli/php.ini -
Redigera båda filerna så att de matchar följande rader:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = Onnote note NOTE Adobe rekommenderar att du anger minnesgränsen till 2 GB när du testar Adobe Commerce. Mer information finns i Nödvändiga PHP-inställningar. -
Spara och avsluta redigeraren.
-
Starta om tjänsten
php-fpm:code language-bash systemctl restart php<php-version>-fpm
Installera och konfigurera MySQL
Mer information finns i MySQL.
Installera Adobe Commerce
Du kan ladda ned Adobe Commerce på flera sätt:
I det här exemplet visas en Composer-baserad installation med kommandoraden.
-
Logga in på programservern som filsystemsägare.
-
Byt till webbserverns dokumentkatalog eller en katalog som du har konfigurerat som ett virtuellt värddokument. I det här exemplet använder vi Ubuntu-standardvärdet
/var/www/html.code language-bash cd /var/www/html -
Installera Composer globalt. Composer krävs för att uppdatera beroenden innan Adobe Commerce installeras:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer -
Skapa ett Composer-projekt med 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>Ange dina autentiseringsnycklar när du uppmanas till detta. Din offentliga nyckel är ditt användarnamn. Din privata nyckel är ditt lösenord.
-
Ange läs- och skrivbehörighet för webbservergruppen innan du installerar programmet. Detta är nödvändigt för att kommandoraden ska kunna skriva filer till filsystemet.
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 . # Ubuntucode language-bash chmod u+x bin/magento -
Installera från kommandoraden. I det här exemplet antas att installationskatalogen har namnet
magento2eeoch att databasvärden finns på samma dator (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>=9200note note NOTE Använd värdet --search-engineoch matchande alternativ för värd/port som krävs för den Adobe Commerce-version som du installerar. För tidigare versioner än 2.4.6 använder duelasticsearch7med--elasticsearch-*-alternativen för Elasticsearch 7 eller OpenSearch. För version 2.4.6 och senare använder du sökmotorvärdet och motsvarande CLI-alternativ som stöds i den versionen. -
Växla till utvecklarläge:
code language-bash cd /var/www/html/magento2/bincode language-bash ./magento deploy:mode:set developer
Konfigurera Nginx
Adobe rekommenderar att du konfigurerar Nginx med hjälp av konfigurationsfilen nginx.conf.sample som finns i installationskatalogen och konfigurationen av det virtuella Nginx-värdsystemet för att bevara både funktioner och säkerhet för Commerce-programmet.
nginx.conf.sample innehåller nödvändiga programroutningsregler och säkerhetshärjande regler. Det begränsar till exempel körning av skadliga skript som överförts till servern. Om du inte använder den här filen eller ändrar dess regler, ansvarar du för att implementera likvärdiga säkerhetskontroller i din anpassade Nginx-konfiguration.Dessa instruktioner förutsätter att du använder Ubuntu-standardplatsen för det virtuella Nginx-värdsystemet, till exempel /etc/nginx/sites-available, och Ubuntu-standarddokumentroten, till exempel /var/www/html. Du kan ändra de här platserna så att de passar din miljö.
-
Skapa ett nytt virtuellt värdsystem för din plats:
code language-bash vim /etc/nginx/sites-available/magento -
Lägg till följande konfiguration:
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 Direktivet includemåste peka på exempelkonfigurationsfilen nginx i installationskatalogen. -
Ersätt
www.magento-dev.commed ditt domännamn. Detta måste matcha den bas-URL som du angav när du installerade Adobe Commerce. -
Spara och avsluta redigeraren.
-
Aktivera det nya virtuella värdsystemet genom att skapa en länk till det i katalogen
/etc/nginx/sites-enabled:code language-bash ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled -
Kontrollera att syntaxen är korrekt:
code language-bash nginx -t -
Starta om Nginx:
code language-bash systemctl restart nginx
Verifiera installationen
Kontrollera installationen genom att öppna en webbläsare och navigera till platsens bas-URL. Mer information finns i Verifiera installationen.
Installera i CentOS 7
Använd det här avsnittet för att installera Adobe Commerce i CentOS 7 med Nginx, PHP och MySQL.
Installera Nginx
yum -y install epel-release
yum -y install nginx
När installationen är klar startar du nginx och konfigurerar det så att det startar vid start:
systemctl start nginx
systemctl enable nginx
När du har slutfört följande avsnitt och installerat programmet använder du en exempelkonfigurationsfil för att konfigurera Nginx.
Installera och konfigurera PHP-FPM
Adobe Commerce kräver flera PHP-tillägg för att fungera korrekt. Utöver dessa tillägg måste du även installera och konfigurera tillägget php-fpm om du använder Nginx.
-
Installera
php-fpm:code language-bash yum -y install <php-fpm-package> -
Öppna filen
/etc/php.inii en redigerare.note note NOTE Installera det paket som innehåller php-fpmför den PHP-version som stöds av den Adobe Commerce-version som du installerar. Paketnamnen varierar beroende på databas och operativsystem. Se systemkrav. -
Avkommentera raden
cgi.fix_pathinfooch ändra värdet till0. -
Redigera filen så att den matchar följande rader:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = Onnote note NOTE Adobe rekommenderar att du anger minnesgränsen till 2 GB när du testar Adobe Commerce. Mer information finns i Nödvändiga PHP-inställningar. -
Avkommentera sessionssökvägskatalogen och ange sökvägen:
code language-conf session.save_path = "/var/lib/php/session" -
Spara och avsluta redigeraren.
-
Öppna
/etc/php-fpm.d/www.confi en redigerare. -
Redigera filen så att den matchar följande rader:
code language-conf user = nginx group = nginx listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660 -
Avkommentera miljöraderna:
code language-conf env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp -
Spara och avsluta redigeraren.
-
Skapa en katalog för PHP-sessionssökvägen och ändra ägaren till användaren och gruppen
nginx:code language-bash mkdir -p /var/lib/php/session/code language-bash chown -R nginx:nginx /var/lib/php/ -
Skapa en katalog för PHP-FPM-socketen och ändra ägaren till användaren och gruppen
nginx:code language-bash mkdir -p /run/php-fpm/code language-bash chown -R nginx:nginx /run/php-fpm/ -
Starta tjänsten
php-fpmoch konfigurera den så att den startar vid start:code language-bash systemctl start php-fpmcode language-bash systemctl enable php-fpm -
Kontrollera att tjänsten
php-fpmkörs:code language-bash netstat -pl | grep php-fpm.sock
Installera och konfigurera MySQL
Mer information finns i MySQL.
Installera Adobe Commerce
Du kan ladda ned Adobe Commerce på flera sätt:
I det här exemplet visas en Composer-baserad installation med kommandoraden.
-
Logga in på programservern som filsystemsägare.
-
Byt till webbserverns dokumentkatalog eller en katalog som du har konfigurerat som ett virtuellt värddokument. I det här exemplet använder du CentOS-standardvärdet
/usr/share/nginx/html.code language-bash cd /usr/share/nginx/html -
Installera Composer globalt. Composer krävs för att uppdatera beroenden innan Adobe Commerce installeras:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer -
Skapa ett Composer-projekt med 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>Ange dina autentiseringsnycklar när du uppmanas till detta. Din offentliga nyckel är ditt användarnamn. Din privata nyckel är ditt lösenord.
-
Ange läs- och skrivbehörighet för webbservergruppen innan du installerar programmet. Detta är nödvändigt för att kommandoraden ska kunna skriva filer till filsystemet.
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 . # CentOScode language-bash chmod u+x bin/magento -
Installera från kommandoraden. I det här exemplet antas att installationskatalogen har namnet
magento2eeoch att databasvärden finns på samma dator (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 -
Växla till utvecklarläge:
code language-bash cd /usr/share/nginx/html/magento2/bincode language-bash ./magento deploy:mode:set developer
Konfigurera Nginx
Vi rekommenderar att du konfigurerar Nginx med hjälp av filen nginx.conf.sample i installationskatalogen och med konfigurationen för det virtuella Nginx-värdsystemet.
nginx.conf.sample innehåller nödvändiga programroutningsregler och säkerhetshärjande regler. Det begränsar till exempel körning av skadliga skript som överförts till servern. Om du inte använder den här filen eller ändrar dess regler, ansvarar du för att implementera likvärdiga säkerhetskontroller i din anpassade Nginx-konfiguration.Dessa instruktioner förutsätter att du använder CentOS-standardplatsen för det virtuella Nginx-värdsystemet, till exempel /etc/nginx/conf.d, och standarddokumentroten, till exempel /usr/share/nginx/html. Du kan ändra de här platserna så att de passar din miljö.
-
Skapa ett nytt virtuellt värdsystem för din plats:
code language-bash vim /etc/nginx/conf.d/magento.conf -
Lägg till följande konfiguration:
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 Direktivet includemåste peka på exempelkonfigurationsfilen nginx i installationskatalogen. -
Ersätt
www.magento-dev.commed ditt domännamn. -
Spara och avsluta redigeraren.
-
Kontrollera att syntaxen är korrekt:
code language-bash nginx -t -
Starta om Nginx:
code language-bash systemctl restart nginx
Konfigurera SELinux och firewalld
SELinux är aktiverat som standard i CentOS 7. Använd följande kommando för att bekräfta att det körs:
sestatus
Så här konfigurerar du SELinux och firewall:
-
Installera hanteringsverktygen för SELinux:
code language-bash yum -y install policycoreutils-python -
Kör följande kommandon för att ändra säkerhetskontexten för installationskatalogen:
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/' -
Installera brandväggspaketet:
code language-bash yum -y install firewalld -
Starta brandväggen och konfigurera den så att den startar vid start:
code language-bash systemctl start firewalldcode language-bash systemctl enable firewalld -
Kör följande kommandon för att öppna portar för HTTP och HTTPS så att du kan komma åt bas-URL:en från en webbläsare:
code language-bash firewall-cmd --permanent --add-service=httpcode language-bash firewall-cmd --permanent --add-service=httpscode language-bash firewall-cmd --reload
Verifiera installationen
Kontrollera installationen genom att öppna en webbläsare och navigera till platsens bas-URL. Mer information finns i Verifiera installationen.