Múltiplos sites

Quando um projeto do PWA Kit é criado com o modelo do Retail React App, ele é configurado por padrão para uma única localidade e site. Contudo, ele pode ser ampliado para executar múltiplos sites com uma única base de código.

O arquivo config/sites.js contém uma definição dos sites que você vem configurando no Business Manager. O exemplo a seguir mostra a configuração dos sites RefArch e RefArchGlobal:

No arquivo /config/default.js, é possível definir o site-padrão e mapear os IDs de site com aliases. Se nenhum alias for definido para o site, os IDs serão usados nos URLs.

Se você definir url.showDefault como true no arquivo /config/default.js, a localidade-padrão e o site-padrão são mostrados nos URLs de seu aplicativo. Além do alias do site, também é possível configurar aliases para sua localidade no arquivo sites.js. Se você configurar um alias para uma localidade, o URL vai exibir o alias em vez do ID da localidade.

Os URLs de aplicativo são construídos com IDs canônicos de localidade e site e têm validade mesmo quando são usados aliases.

Com arquivos de configuração específicos ao ambiente, é possível gerenciar múltiplos sites do B2C definidos no Business Manager e implantá-los em diferentes domínios usando vários ambientes do Managed Runtime.

Por exemplo, seu site pode ser acessado de customer.ca e customer.uk ou de customer-a.com e customer-b.ca. Você também pode personalizar ainda mais os padrões de URL. Por exemplo, os URLs podem ser formatados como customer-1.com/us ou customer-2.com/?locale=en_US.

É possível implantar pacotes que funcionam com vários domínios em ambientes diferentes do Managed Runtime, cada um configurado para um domínio específico. O mapeamento da configuração é feito com a criação de um arquivo de configuração específico para cada ambiente do Managed Runtime.

Por exemplo, para implantar customer-1.com no ambiente env-customer-1 e customer-2.com no ambiente env-customer-2, é preciso criar os seguintes arquivos para substituir config/default.js:

  • config/env-customer-1.js
  • config/env-customer-2.js

Para saber mais sobre configurações específicas ao ambiente, consulte o guia Arquivos de configuração.