Configurar vários sites com o Apache
Presumimos que:
Se necessário, copie o script de ponto de entrada index.php
existente para a exibição do site ou da loja e adicione o seguinte a ele:
-
Você está trabalhando em uma máquina de desenvolvimento (laptop, máquina virtual etc.)
Tarefas adicionais podem ser necessárias para implantar vários sites em um ambiente hospedado; verifique com seu provedor de hospedagem para obter mais informações.
Tarefas adicionais são necessárias para configurar a Adobe Commerce na infraestrutura em nuvem. Após concluir as tarefas discutidas neste tópico, consulte Configurar vários sites ou lojas no guia do Commerce na Infraestrutura da Nuvem.
-
Você usa um host virtual por site; o arquivo de configuração do host virtual é
/etc/httpd/httpd.conf
Diferentes versões do Apache em diferentes sistemas operacionais configuram hosts virtuais de forma diferente. Consulte a Documentação do Apache ou um administrador de rede se não tiver certeza de como configurar um host virtual.
-
O software Commerce está instalado em
/var/www/html/magento2
-
Você tem dois sites diferentes do padrão:
french.mysite.mg
com código de sitefrench
e código de exibição de armazenamentofr
german.mysite.mg
com código de sitegerman
e código de exibição de armazenamentode
Roteiro para configurar vários sites com o Apache
A configuração de vários armazenamentos consiste nas seguintes tarefas:
- Configurar sites, lojas e exibições de loja no Administrador.
- Crie um host virtual Apache por site do Commerce.
Etapa 1: criar sites, lojas e visualizações de loja no Administrador
Consulte Configurar vários sites, lojas e exibições de loja no Administrador.
Etapa 2: Criar hosts virtuais do Apache
Esta seção discute como definir valores para MAGE_RUN_TYPE
e MAGE_RUN_CODE
usando a variável de servidor Apache SetEnvIf
em um host virtual.
Para obter mais informações sobre SetEnvIf
, consulte:
Para criar hosts virtuais Apache:
-
Como um usuário com privilégios
root
, abra o arquivo de configuração do host virtual em um editor de texto.Por exemplo, abrir
/etc/httpd/conf/httpd.conf
-
Localize a seção que começa com
<VirtualHost *:80>
. -
Crie os seguintes hosts virtuais após qualquer host virtual existente:
code language-conf <VirtualHost *:80> ServerName mysite.mg DocumentRoot /var/www/html/magento2/pub/ </VirtualHost> <VirtualHost *:80> ServerName french.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "french" SetEnv MAGE_RUN_TYPE "website" </VirtualHost> <VirtualHost *:80> ServerName german.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "german" SetEnv MAGE_RUN_TYPE "website" </VirtualHost>
-
Salve as alterações em
httpd.conf
e saia do editor de texto. -
Reiniciar o Apache:
- CentOS:
service httpd restart
- Ubuntu:
service apache2 restart
- CentOS:
Verifique seu site
A menos que você tenha um DNS configurado para as URLs dos armazenamentos, é necessário adicionar uma rota estática ao host no arquivo hosts
:
-
Localize o arquivo
hosts
do sistema operacional. -
Adicione a rota estática no formato:
code language-conf <ip-address> french.mysite.mg <ip-address> german.mysite.mg
-
Vá para um dos seguintes URLs no seu navegador:
code language-http http://mysite.mg/admin http://french.mysite.mg/frenchstoreview http://german.mysite.mg/germanstoreview
- Tarefas adicionais podem ser necessárias para implantar vários sites em um ambiente hospedado; verifique com seu provedor de hospedagem para obter mais informações.
- Tarefas adicionais são necessárias para configurar o Adobe Commerce na infraestrutura em nuvem; consulte Configurar vários sites ou lojas na nuvem no guia do Commerce na Infraestrutura em Nuvem.
Solução de problemas
- Se os sites em francês e alemão retornarem 404s, mas o Administrador carregar, verifique se você concluiu a Etapa 6: adicionar o código da loja à URL de base.
- Se todos os URLs retornarem 404s, reinicie o servidor da Web.
- Se o Admin não funcionar corretamente, certifique-se de configurar os hosts virtuais corretamente.