Nginx
O Adobe Commerce oferece suporte ao nginx 1.x (ou à versão principal mais recente). Você também deve instalar a versão mais recente do php-fpm
.
As instruções de instalação variam de acordo com o sistema operacional que você está usando. Consulte PHP para obter informações.
Ubuntu
A seção a seguir descreve como instalar o Adobe Commerce 2.x no Ubuntu usando nginx, PHP e MySQL.
Instalar o nginx
sudo apt -y install nginx
Você também pode compilar nginx a partir da origem
Depois de concluir as seções a seguir e instalar o aplicativo, usaremos um exemplo de arquivo de configuração para configurar nginx.
Instalar e configurar o php-fpm
O Adobe Commerce requer várias extensões PHP para funcionar corretamente. Além dessas extensões, você também deve instalar e configurar a extensão php-fpm
se estiver usando nginx.
Para instalar e configurar o php-fpm
:
-
Instalar
php-fpm
ephp-cli
:code language-bash apt-get -y install php7.2-fpm php7.2-cli
note note NOTE Este comando instala a última versão disponível do PHP 7.2.X. Consulte requisitos do sistema para ver as versões do PHP suportadas. -
Abrir os arquivos
php.ini
em um editor:code language-bash vim /etc/php/7.2/fpm/php.ini
code language-bash vim /etc/php/7.2/cli/php.ini
-
Edite ambos os arquivos para corresponder às seguintes linhas:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Recomendamos definir o limite de memória para 2 G ao testar o Adobe Commerce. Consulte Configurações PHP necessárias para obter mais informações. -
Salve e saia do editor.
-
Reiniciar o serviço
php-fpm
:code language-bash systemctl restart php7.2-fpm
Instalar e configurar o MySQL
Consulte MySQL para obter mais informações.
Instalar e configurar
Há várias maneiras de baixar o Adobe Commerce, incluindo:
Este exemplo mostra uma instalação baseada no Composer usando a linha de comando.
-
Como o proprietário do sistema de arquivos, faça logon no servidor de aplicativos.
-
Altere para o diretório docroot do servidor Web ou um diretório que você configurou como docroot do host virtual. Para este exemplo, estamos usando o padrão Ubuntu
/var/www/html
.code language-bash cd /var/www/html
-
Instale o Composer globalmente. O Composer é necessário para atualizar dependências antes de instalar o Adobe Commerce:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Crie um projeto do Composer usando o metapackage do 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 solicitado, insira suas chaves de autenticação. Sua chave pública é seu nome de usuário; sua chave privada é sua senha.
-
Defina permissões de leitura e gravação para o grupo de servidores Web antes de instalar o aplicativo. Isso é necessário para que a linha de comando possa gravar arquivos no sistema de arquivos.
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
-
Instalar da linha de comando. Este exemplo supõe que o diretório de instalação seja nomeado como
magento2ee
, odb-host
esteja na mesma máquina (localhost
) e que odb-name
,db-user
edb-password
sejam todosmagento
: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
-
Alternar para modo de desenvolvedor:
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Configurar nginx
Recomendamos configurar o nginx usando o arquivo de configuração nginx.conf.sample
fornecido no diretório de instalação e no host virtual nginx.
Essas instruções supõem que você esteja usando o local padrão do Ubuntu para o host virtual nginx (por exemplo, /etc/nginx/sites-available
) e o docroot padrão do Ubuntu (por exemplo, /var/www/html
). No entanto, você pode alterar esses locais para atender ao seu ambiente.
-
Crie um novo host virtual para seu site:
code language-bash vim /etc/nginx/sites-available/magento
-
Adicione a seguinte configuração:
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 A diretiva include
deve apontar para a amostra do arquivo de configuração nginx no diretório de instalação. -
Substitua
www.magento-dev.com
pelo nome de domínio. Deve corresponder ao URL de base especificado ao instalar o Adobe Commerce. -
Salve e saia do editor.
-
Ative o host virtual recém-criado criando um link simbólico para ele no diretório
/etc/nginx/sites-enabled
:code language-bash ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
-
Verifique se a sintaxe está correta:
code language-bash nginx -t
-
Reiniciar o nginx:
code language-bash systemctl restart nginx
Verificar a instalação
Abra um navegador e navegue até a URL base do site para verificar a instalação.
CentOS 7
A seção a seguir descreve como instalar o Adobe Commerce 2.x no CentOS 7 usando nginx, PHP e MySQL.
Instalar o nginx
yum -y install epel-release
yum -y install nginx
Após a conclusão da instalação, inicie o nginx e configure-o para iniciar no momento da inicialização:
systemctl start nginx
systemctl enable nginx
Depois de concluir as seções a seguir e instalar o aplicativo, usaremos um arquivo de configuração de exemplo para configurar o nginx.
Instalar e configurar o php-fpm
O Adobe Commerce requer várias extensões PHP para funcionar corretamente. Além dessas extensões, você também deve instalar e configurar a extensão php-fpm
se estiver usando nginx.
-
Instalar
php-fpm
:code language-bash yum -y install php70w-fpm
-
Abra o arquivo
/etc/php.ini
em um editor. -
Descomente a linha
cgi.fix_pathinfo
e altere o valor para0
. -
Edite o arquivo para corresponder às seguintes linhas:
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Recomendamos definir o limite de memória para 2 G ao testar o Adobe Commerce. Consulte Configurações PHP necessárias para obter mais informações. -
Remova o comentário do diretório de caminho da sessão e defina o caminho:
code language-conf session.save_path = "/var/lib/php/session"
-
Salve e saia do editor.
-
Abra
/etc/php-fpm.d/www.conf
em um editor. -
Edite o arquivo para corresponder às seguintes linhas:
code language-conf user = nginx group = nginx listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660
-
Remova o comentário das linhas de ambiente:
code language-conf env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp
-
Salve e saia do editor.
-
Crie um diretório para o caminho da sessão PHP e altere o proprietário para o usuário e grupo
apache
:code language-bash mkdir -p /var/lib/php/session/
code language-bash chown -R apache:apache /var/lib/php/
-
Crie um diretório para o caminho da sessão PHP e altere o proprietário para o usuário e grupo
apache
:code language-bash mkdir -p /run/php-fpm/
code language-bash chown -R apache:apache /run/php-fpm/
-
Inicie o serviço
php-fpm
e configure-o para iniciar no momento da inicialização:code language-bash systemctl start php-fpm
code language-bash systemctl enable php-fpm
-
Verifique se o serviço
php-fpm
está em execução:code language-bash netstat -pl | grep php-fpm.sock
Instalar e configurar o MySQL
Consulte MySQL para obter mais informações.
Instalar e configurar
Há várias maneiras de baixar o Adobe Commerce, incluindo:
Este exemplo mostra uma instalação baseada no Composer usando a linha de comando.
-
Como o proprietário do sistema de arquivos, faça logon no servidor de aplicativos.
-
Altere para o diretório docroot do servidor Web ou um diretório que você configurou como docroot do host virtual. Para este exemplo, estamos usando o padrão Ubuntu
/var/www/html
.code language-bash cd /var/www/html
-
Instale o Composer globalmente. O Composer é necessário para atualizar dependências antes de instalar o Adobe Commerce:
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Crie um projeto do Composer usando o metapackage do 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 solicitado, insira suas chaves de autenticação. Sua chave pública é seu nome de usuário; sua chave privada é sua senha.
-
Defina permissões de leitura e gravação para o grupo de servidores Web antes de instalar o aplicativo. Isso é necessário para que a linha de comando possa gravar arquivos no sistema de arquivos.
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
-
Instalar da linha de comando. Este exemplo supõe que o diretório de instalação seja nomeado como
magento2ee
, odb-host
esteja na mesma máquina (localhost
) e que odb-name
,db-user
edb-password
sejam todosmagento
: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
-
Alternar para modo de desenvolvedor:
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Configurar nginx
Recomendamos configurar o nginx usando o arquivo de configuração nginx.conf.sample
fornecido no diretório de instalação e no host virtual nginx.
Essas instruções supõem que você esteja usando o local padrão do CentOS para o host virtual nginx (por exemplo, /etc/nginx/conf.d
) e o docroot padrão (por exemplo, /usr/share/nginx/html
). No entanto, você pode alterar esses locais para atender ao seu ambiente.
-
Crie um novo host virtual para seu site:
code language-bash vim /etc/nginx/conf.d/magento.conf
-
Adicione a seguinte configuração:
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 A diretiva include
deve apontar para a amostra do arquivo de configuração nginx no diretório de instalação. -
Substitua
www.magento-dev.com
pelo nome de domínio. -
Salve e saia do editor.
-
Verifique se a sintaxe está correta:
code language-bash nginx -t
-
Reiniciar o nginx:
code language-bash systemctl restart nginx
Configurar SELinux e Fireworld
O SELinux é ativado por padrão no CentOS 7. Use o seguinte comando para ver se está em execução:
sestatus
Para configurar o SELinux e o firewalld:
-
Instale as ferramentas de gerenciamento do SELinux:
code language-bash yum -y install policycoreutils-python
-
Execute os seguintes comandos para alterar o contexto de segurança do diretório de instalação:
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/'
-
Instale o pacote firewalld:
code language-bash yum -y install firewalld
-
Inicie o serviço de firewall e configure-o para iniciar no momento da inicialização:
code language-bash systemctl start firewalld
code language-bash systemctl enable firewalld
-
Execute os seguintes comandos para abrir portas para HTTP e HTTPS para poder acessar o URL base de um navegador da Web:
code language-bash firewall-cmd --permanent --add-service=http
code language-bash firewall-cmd --permanent --add-service=https
code language-bash firewall-cmd --reload
Verificar a instalação
Abra um navegador e navegue até a URL base do site para verificar a instalação.