Mapeamento de recursos resource-mapping
O mapeamento de recursos é usado para definir redirecionamentos, URLs personalizados e hosts virtuais para AEM.
Por exemplo, você pode usar esses mapeamentos para:
- Prefixar todas as solicitações com
/content
para que a estrutura interna fique oculta dos visitantes do site. - Defina um redirecionamento para que todas as solicitações para o
/content/en/gateway
página do seu site são redirecionados parahttps://gbiv.com/
.
Um mapeamento HTTP possível prefixa todas as solicitações para localhost:4503
com /content
. Um mapeamento como esse pode ser usado para ocultar a estrutura interna dos visitantes do site, pois permite:
localhost:4503/content/we-retail/en/products.html
Para ser acessado usando:
localhost:4503/we-retail/en/products.html
Como o mapeamento adiciona automaticamente o prefixo /content
para /we-retail/en/products.html
.
Exibição de Definições de Mapeamento viewing-mapping-definitions
Os mapeamentos formam duas listas que o JCR Resource Resolver avalia (de cima para baixo) para encontrar uma correspondência.
Essas listas podem ser exibidas (juntamente com informações de configuração) na ResourceResolver JCR opção do console Felix; por exemplo, https://<*host*>:<*port*>/system/console/jcrresolver
:
-
Configuração Mostra a configuração atual (conforme definido para a variável Apache Sling Resource Resolver).
-
Teste de configuração Isso permite que você insira um URL ou um caminho de recurso. Clique em Resolver ou Mapa para confirmar como o sistema transforma a entrada.
-
Entradas do mapa do resolvedor
A lista de entradas usadas pelos métodos ResourceResolver.resolve para mapear URLs para Recursos. -
Mapeamento de Entradas do Mapa
A lista de entradas usadas pelos métodos ResourceResolver.map para mapear Caminhos de Recursos para URLs.
As duas listas mostram várias entradas, incluindo aquelas definidas como padrão pelas aplicações. Essas entradas geralmente têm como objetivo simplificar URLs para o usuário.
O par de listas a Padrão, uma expressão regular correspondente à solicitação, com um Substituição que define o redirecionamento a ser imposto.
Por exemplo, o:
Padrão ^[^/]+/[^/]+/welcome$
Aciona o:
Substituição /libs/cq/core/content/welcome.html
.
Para redirecionar uma solicitação:
https://localhost:4503/welcome
``
Para:
https://localhost:4503/libs/cq/core/content/welcome.html
Novas definições de mapeamento são criadas no repositório.
Criação de definições de mapeamento no AEM creating-mapping-definitions-in-aem
Em uma instalação padrão do AEM, você pode encontrar a pasta:
/etc/map/http
Essa pasta é a estrutura usada ao definir mapeamentos para o protocolo HTTP. Outras pastas ( sling:Folder
) pode ser criado em /etc/map
para quaisquer outros protocolos que você deseja mapear.
Configuração de um redirecionamento interno para /content configuring-an-internal-redirect-to-content
Para criar o mapeamento que prefixa qualquer solicitação para https://localhost:4503/ com /content
:
-
Usando o CRXDE, acesse
/etc/map/http
. -
Criar um nó:
-
Tipo
sling:Mapping
Esse tipo de nó se destina a esses mapeamentos, embora seu uso não seja obrigatório. -
Nome
localhost_any
-
-
Clique em Salvar tudo.
-
Adicionar as seguintes propriedades desse nó:
-
Nome
sling:match
-
Tipo
String
-
Valor
localhost.4503/
-
-
Nome
sling:internalRedirect
-
Tipo
String
-
Valor
/content/
-
-
-
Clique em Salvar tudo.
Esse mapeamento lida com uma solicitação como:localhost:4503/geometrixx/en/products.html
como se:localhost:4503/content/geometrixx/en/products.html
foi solicitado.
Por exemplo, Interpolação de string O é útil porque permite configurar um mapeamento que obtém valores por ambiente por meio de variáveis de ambiente.
/etc/map.publish
para manter as configurações do ambiente de publicação. Essas configurações devem ser replicadas e o novo local ( /etc/map.publish
) configurado para o Localização do mapeamento do Apache Sling Resource Resolver do ambiente de publicação.