Apache
O Adobe Commerce é compatível com o Apache 2.4.x.
Diretivas necessárias do Apache
-
Defina
AllowEncodedSlashes
na configuração do servidor (globalmente) ou nas configurações do host virtual para evitar a decodificação das barras codificadas que podem causar problemas para URLs. Por exemplo, ao recuperar produtos com uma barra na SKU por meio da API, você não deseja convertê-los. O bloco de amostra não está completo e outras diretivas são necessárias.code language-conf <VirtualHost *:443> # Allow encoded slashes AllowEncodedSlashes NoDecode </VirtualHost>
Regravações do Apache e htaccess
Este tópico discute como habilitar substituições no Apache 2.4 e especificar uma configuração para o arquivo de configuração distribuído, .htaccess
.
O Adobe Commerce usa substituições de servidor e .htaccess
para fornecer instruções no nível do diretório para o Apache. As instruções a seguir também estão incluídas em todas as outras seções deste tópico.
Use esta seção para habilitar substituições no Apache 2.4 e especificar uma configuração para o arquivo de configuração distribuído, .htaccess
O Adobe Commerce usa substituições de servidor e .htaccess
para fornecer instruções no nível do diretório para o Apache.
-
Habilite o módulo de regravação do Apache:
code language-bash a2enmod rewrite
-
Para permitir que o aplicativo use o arquivo de configuração distribuído
.htaccess
, consulte as diretrizes na documentação do Apache 2.4.note tip TIP No Apache 2.4, o arquivo de configuração de site padrão do servidor é /etc/apache2/sites-available/000-default.conf
.Por exemplo, você pode adicionar o seguinte ao final de
000-default.conf
:code language-none <Directory "/var/www/html"> AllowOverride All </Directory>
note note NOTE Às vezes, podem ser necessários parâmetros adicionais. Para obter mais informações, consulte a documentação do Apache 2.4. -
Se você alterou as configurações do Apache, reinicie o Apache:
code language-bash service apache2 restart
note note NOTE - Se você atualizou de uma versão anterior do Apache, primeiro procure por
<Directory "/var/www/html">
ou<Directory "/var/www">
em000-default.conf
. - Você deve alterar o valor de
AllowOverride
na diretiva para o diretório no qual você espera instalar o software Adobe Commerce. Por exemplo, para instalar no docroot do servidor Web, edite a diretiva em<Directory /var/www>
.
- Se você atualizou de uma versão anterior do Apache, primeiro procure por
Módulos necessários do Apache
O Adobe Commerce requer que os seguintes módulos do Apache sejam instalados:
Verificar a versão do Apache
Para verificar a versão do Apache que você está executando no momento, insira:
apache2 -v
O resultado é semelhante ao seguinte:
Server version: Apache/2.4.04 (Ubuntu)
Server built: Jul 22 2020 14:35:32
-
Se o Apache não estiver instalado, consulte:
Instalação ou atualização do Apache no Ubuntu
As seções a seguir discutem como instalar ou atualizar o Apache:
- Instalar o Apache
- Atualize para o Apache 2.4 no Ubuntu para usar o PHP 7.4.
Instalação do Apache no Ubuntu
Para instalar a versão padrão do Apache:
-
Instalar o Apache
code language-bash apt-get -y install apache2
-
Verifique a instalação.
code language-bash apache2 -v
O resultado é semelhante ao seguinte:
code language-none Server version: Apache/2.4.18 (Ubuntu) Server built: 2020-04-15T18:00:57
-
Habilitar regravações e
.htaccess
.
Atualização do Apache no Ubuntu
Para atualizar para o Apache 2.4:
-
Adicione o repositório
ppa:ondrej
, que tem o Apache 2.4:code language-bash apt-get -y update
code language-bash apt-add-repository ppa:ondrej/apache2
code language-bash apt-get -y update
-
Instalar o Apache 2.4:
code language-bash apt-get install -y apache2
note note NOTE Se o comando 'apt-get install' falhar devido a dependências não atendidas, consulte um recurso como https://askubuntu.com/. -
Verifique a instalação.
code language-bash apache2 -v
Mensagens semelhantes às seguintes devem ser exibidas:
code language-none Server version: Apache/2.4.10 (Ubuntu) Server built: Jul 22 2020 22:46:25
-
Habilitar regravações e
.htaccess
.
Instalação do Apache no CentOS
O Adobe Commerce requer regravações do servidor Apache. Você também deve especificar o tipo de diretivas que podem ser usadas em .htaccess
, que o aplicativo usa para especificar regras de substituição.
A instalação e configuração do Apache é basicamente um processo de três etapas: instalar o software, habilitar regravações e especificar diretivas .htaccess
.
Instalação do Apache
-
Instale o Apache 2.4 se ainda não tiver feito isso.
code language-bash yum -y install httpd
-
Verifique a instalação:
code language-bash httpd -v
Mensagens semelhantes às seguintes são exibidas para confirmar que a instalação foi bem-sucedida:
code language-none Server version: Apache/2.4.40 (Unix) Server built: Oct 16 2020 14:48:21
-
Prossiga para a próxima seção.
note note NOTE Mesmo que o Apache 2.4 seja fornecido por padrão com o CentOS, consulte a seção a seguir para configurá-lo.
Habilitar regravações e .htaccess para CentOS
-
Abrir arquivo
/etc/httpd/conf/httpd.conf
para edição:code language-bash vim /etc/httpd/conf/httpd.conf`
-
Localize o bloco que começa com:
code language-conf <Directory "/var/www/html">
-
Altere o valor de
AllowOverride
paraAll
.Por exemplo,
code language-conf <Directory "/var/www/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory>
note note NOTE Os valores anteriores para Order
podem não funcionar em todos os casos. Para obter mais informações, consulte a documentação do Apache (2.4). -
Salve o arquivo e saia do editor de texto.
-
Para aplicar as configurações do Apache, reinicie o Apache.
code language-bash service apache2 restart
Habilite regravações e .htaccess para Ubuntu
-
Abrir arquivo
/etc/apache2/sites-available/default
para edição:code language-bash vim /etc/apache2/sites-available/default
-
Localize o bloco que começa com:
<Directory "/var/www/html">
-
Altere o valor de
AllowOverride
paraAll
.Por exemplo:
code language-conf <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory>
-
Salve o arquivo e saia do editor de texto.
-
Configure o Apache para usar o módulo
mod_rewrite
:code language-bash cd /etc/apache2/mods-enabled
code language-bash ln -s ../mods-available/rewrite.load
-
Reinicie o Apache para aplicar as alterações:
code language-bash service apache2 restart
Resolvendo erros 403 (Proibido)
Se você encontrar erros 403 Proibido ao tentar acessar o site, poderá atualizar sua configuração do Apache ou a configuração do host virtual para permitir que os visitantes do site:
Resolução de erros 403 proibidos para o Apache 2.4
Para permitir que visitantes do site acessem seu site, use uma das Diretivas necessárias.
Por exemplo:
<Directory "/var/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Require all granted
</Directory>
Order
podem não funcionar em todos os casos. Para obter mais informações, consulte a documentação do Apache.