Nginx
Adobe Commerce supporta nginx 1.x (o la versione principale più recente). È inoltre necessario installare la versione più recente di php-fpm.
Le istruzioni di installazione variano in base al sistema operativo in uso. Per informazioni, vedere PHP.
Ubuntu
La sezione seguente descrive come installare Adobe Commerce 2.x su Ubuntu utilizzando nginx, PHP e MySQL.
Installa nginx
sudo apt -y install nginx
Puoi anche generare un indice dall'origine
Dopo aver completato le sezioni seguenti e aver installato l'applicazione, verrà utilizzato un file di configurazione di esempio per configurare nginx.
Installare e configurare php-fpm
Adobe Commerce richiede diverse estensioni PHP per funzionare correttamente. Oltre a queste estensioni, se utilizzi nginx devi installare e configurare l'estensione php-fpm.
Per installare e configurare php-fpm:
-
Installa
php-fpmephp-cli:code language-bash apt-get -y install php7.2-fpm php7.2-clinote note NOTE Con questo comando viene installata la versione più recente disponibile di PHP 7.2.X. Consulta requisiti di sistema per le versioni PHP supportate. -
Apri i file
php.iniin un editor:code language-bash vim /etc/php/7.2/fpm/php.inicode language-bash vim /etc/php/7.2/cli/php.ini -
Modificate entrambi i file in modo che corrispondano alle seguenti righe:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = Onnote note NOTE È consigliabile impostare il limite di memoria su 2 G durante il test di Adobe Commerce. Per ulteriori informazioni, consultare Impostazioni PHP richieste. -
Salva ed esci dall’editor.
-
Riavviare il servizio
php-fpm:code language-bash systemctl restart php7.2-fpm
Installare e configurare MySQL
Per ulteriori informazioni, consultare MySQL.
Installare e configurare
Esistono diversi modi per scaricare Adobe Commerce, tra cui:
Questo esempio mostra un'installazione basata su Compositore utilizzando la riga di comando.
-
In qualità di proprietario del file system, accedi al server applicazioni.
-
Passare alla directory principale dei documenti del server Web o a una directory configurata come directory principale dei documenti host virtuale. In questo esempio viene utilizzato il valore predefinito di Ubuntu
/var/www/html.code language-bash cd /var/www/html -
Installa Compositore a livello globale. Il Compositore è necessario per aggiornare le dipendenze prima di installare Adobe Commerce:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer -
Crea un progetto Compositore utilizzando il metapacchetto Adobe Commerce.
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>Quando richiesto, immetti le chiavi di autenticazione. La chiave pubblica è il tuo nome utente; la tua chiave privata è la tua password.
-
Impostare le autorizzazioni di lettura/scrittura per il gruppo di server Web prima di installare l'applicazione. Ciò è necessario affinché la riga di comando possa scrivere file nel file system.
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 -
Installa dalla riga di comando. In questo esempio si presuppone che la directory di installazione sia denominata
magento2ee, chedb-hostsi trovi nello stesso computer (localhost) e chedb-name,db-useredb-passwordsiano tuttimagento: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 -
Passa alla modalità sviluppatore:
code language-bash cd /var/www/html/magento2/bincode language-bash ./magento deploy:mode:set developer
Configura indice
È consigliabile configurare Nginx utilizzando il file di configurazione nginx.conf.sample fornito nella directory di installazione e nell'host virtuale Nginx.
Queste istruzioni presuppongono l'utilizzo della posizione predefinita di Ubuntu per l'host virtuale nginx (ad esempio, /etc/nginx/sites-available) e la directory principale dei documenti predefinita di Ubuntu (ad esempio, /var/www/html). È tuttavia possibile modificare tali posizioni in base all'ambiente in uso.
-
Crea un nuovo host virtuale per il sito:
code language-bash vim /etc/nginx/sites-available/magento -
Aggiungi la seguente configurazione:
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 La direttiva includedeve puntare al file di configurazione nginx di esempio nella directory di installazione. -
Sostituisci
www.magento-dev.comcon il tuo nome di dominio. Deve corrispondere all’URL di base specificato durante l’installazione di Adobe Commerce. -
Salva ed esci dall’editor.
-
Attivare l'host virtuale appena creato creando un collegamento simbolico nella directory
/etc/nginx/sites-enabled:code language-bash ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled -
Verifica che la sintassi sia corretta:
code language-bash nginx -t -
Inginx di riavvio:
code language-bash systemctl restart nginx
Verificare l'installazione
Apri un browser Web e passa all'URL di base del tuo sito per verificare l'installazione.
CentOS 7
La sezione seguente descrive come installare Adobe Commerce 2.x su CentOS 7 utilizzando nginx, PHP e MySQL.
Installa nginx
yum -y install epel-release
yum -y install nginx
Al termine dell'installazione, avviare Index e configurarlo per avviarlo al momento dell'avvio:
systemctl start nginx
systemctl enable nginx
Dopo aver completato le sezioni seguenti e aver installato l’applicazione, utilizzeremo un file di configurazione di esempio per configurare nginx.
Installare e configurare php-fpm
Adobe Commerce richiede diverse estensioni PHP per funzionare correttamente. Oltre a queste estensioni, se utilizzi nginx devi installare e configurare l'estensione php-fpm.
-
Installa
php-fpm:code language-bash yum -y install php70w-fpm -
Aprire il file
/etc/php.iniin un editor. -
Rimuovere il commento dalla riga
cgi.fix_pathinfoe modificare il valore in0. -
Modifica il file in modo che corrisponda alle righe seguenti:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = Onnote note NOTE È consigliabile impostare il limite di memoria su 2 G durante il test di Adobe Commerce. Per ulteriori informazioni, consultare Impostazioni PHP richieste. -
Rimuovere il commento dalla directory del percorso di sessione e impostare il percorso:
code language-conf session.save_path = "/var/lib/php/session" -
Salva ed esci dall’editor.
-
Apri
/etc/php-fpm.d/www.confin un editor. -
Modifica il file in modo che corrisponda alle righe seguenti:
code language-conf user = nginx group = nginx listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660 -
Rimuovi commento dalle righe ambiente:
code language-conf env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp -
Salva ed esci dall’editor.
-
Creare una directory per il percorso della sessione PHP e impostare il proprietario sull'utente e sul gruppo
apache:code language-bash mkdir -p /var/lib/php/session/code language-bash chown -R apache:apache /var/lib/php/ -
Creare una directory per il percorso della sessione PHP e impostare il proprietario sull'utente e sul gruppo
apache:code language-bash mkdir -p /run/php-fpm/code language-bash chown -R apache:apache /run/php-fpm/ -
Avviare il servizio
php-fpme configurarlo per l'avvio al momento dell'avvio:code language-bash systemctl start php-fpmcode language-bash systemctl enable php-fpm -
Verificare che il servizio
php-fpmsia in esecuzione:code language-bash netstat -pl | grep php-fpm.sock
Installare e configurare MySQL
Per ulteriori informazioni, consultare MySQL.
Installare e configurare
Esistono diversi modi per scaricare Adobe Commerce, tra cui:
Questo esempio mostra un'installazione basata su Compositore utilizzando la riga di comando.
-
In qualità di proprietario del file system, accedi al server applicazioni.
-
Passare alla directory principale dei documenti del server Web o a una directory configurata come directory principale dei documenti host virtuale. In questo esempio viene utilizzato il valore predefinito di Ubuntu
/var/www/html.code language-bash cd /var/www/html -
Installa Compositore a livello globale. Il Compositore è necessario per aggiornare le dipendenze prima di installare Adobe Commerce:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer -
Crea un progetto Compositore utilizzando il metapacchetto Adobe Commerce.
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>Quando richiesto, immetti le chiavi di autenticazione. La chiave pubblica è il tuo nome utente; la tua chiave privata è la tua password.
-
Impostare le autorizzazioni di lettura/scrittura per il gruppo di server Web prima di installare l'applicazione. Ciò è necessario affinché la riga di comando possa scrivere file nel file system.
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 -
Installa dalla riga di comando. In questo esempio si presuppone che la directory di installazione sia denominata
magento2ee, chedb-hostsi trovi nello stesso computer (localhost) e chedb-name,db-useredb-passwordsiano tuttimagento: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 -
Passa alla modalità sviluppatore:
code language-bash cd /var/www/html/magento2/bincode language-bash ./magento deploy:mode:set developer
Configura indice
È consigliabile configurare Nginx utilizzando il file di configurazione nginx.conf.sample fornito nella directory di installazione e nell'host virtuale Nginx.
Queste istruzioni presuppongono l'utilizzo della posizione predefinita CentOS per l'host virtuale successivo (ad esempio, /etc/nginx/conf.d) e la directory principale dei documenti predefinita (ad esempio, /usr/share/nginx/html). È tuttavia possibile modificare queste posizioni in base all'ambiente in uso.
-
Crea un nuovo host virtuale per il sito:
code language-bash vim /etc/nginx/conf.d/magento.conf -
Aggiungi la seguente configurazione:
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 La direttiva includedeve puntare al file di configurazione nginx di esempio nella directory di installazione. -
Sostituisci
www.magento-dev.comcon il tuo nome di dominio. -
Salva ed esci dall’editor.
-
Verifica che la sintassi sia corretta:
code language-bash nginx -t -
Inginx di riavvio:
code language-bash systemctl restart nginx
Configurare SELinux e Firewall
SELinux è abilitato per impostazione predefinita su CentOS 7. Utilizza il seguente comando per verificare se è in esecuzione:
sestatus
Per configurare SELinux e firewalld:
-
Installare gli strumenti di gestione SELinux:
code language-bash yum -y install policycoreutils-python -
Eseguire i comandi seguenti per modificare il contesto di protezione per la directory di installazione:
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/' -
Installare il pacchetto firewalld:
code language-bash yum -y install firewalld -
Avviare il servizio firewall e configurarlo per l'avvio al momento dell'avvio:
code language-bash systemctl start firewalldcode language-bash systemctl enable firewalld -
Esegui i seguenti comandi per aprire le porte per HTTP e HTTPS in modo da poter accedere all’URL di base da un browser web:
code language-bash firewall-cmd --permanent --add-service=httpcode language-bash firewall-cmd --permanent --add-service=httpscode language-bash firewall-cmd --reload
Verificare l'installazione
Apri un browser Web e passa all'URL di base del tuo sito per verificare l'installazione.