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.

Configuração do site 

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

1// /config/sites.js
2
3module.exports = [
4  {
5    id: "RefArch",
6    l10n: {
7      supportedCurrencies: ["USD"],
8      defaultCurrency: "USD",
9      defaultLocale: "en-US",
10      supportedLocales: [
11        {
12          id: "en-US",
13          alias: "us",
14          preferredCurrency: "USD",
15        },
16        {
17          id: "en-CA",
18          preferredCurrency: "USD",
19        },
20      ],
21    },
22  },
23  {
24    id: "RefArchGlobal",
25    l10n: {
26      supportedCurrencies: ["GBP", "EUR", "JPY"],
27      defaultCurrency: "GBP",
28      supportedLocales: [
29        {
30          id: "de-DE",
31          alias: "de",
32          preferredCurrency: "EUR",
33        },
34        {
35          id: "en-GB",
36          preferredCurrency: "GBP",
37        },
38        {
39          id: "ja-JP",
40          preferredCurrency: "JPY",
41        },
42      ],
43      defaultLocale: "en-GB",
44    },
45  },
46];

Site padrão e aliases 

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. O exemplo a seguir define o site padrão para RefArchGlobal e define três aliases para ele.

1// /config/default.js
2
3defaultSite: 'RefArchGlobal',
4siteAliases: {
5    RefArch: 'us',
6    RefArchGlobal: 'global',
7    NTOManaged: 'nto'
8},

Se você definir url.showDefault como true no arquivo /config/default.js, a localidade 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.

Note

Implantação para múltiplos domínios 

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.

Consulte também