O mapeamento de recursos é usado para definir redirecionamentos, URLs personalizadas e hosts virtuais para AEM.
Por exemplo, você pode usar esses mapeamentos para:
/content
em todas as solicitações para que a estrutura interna fique oculta dos visitantes do seu site./content/en/gateway
do site sejam redirecionadas para https://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, conforme permite:
localhost:4503/content/we-retail/en/products.html
a ser acessado usando:
localhost:4503/we-retail/en/products.html
já que o mapeamento adicionará automaticamente o prefixo /content
a /we-retail/en/products.html
.
URLs personalizadas não suportam padrões regex.
Consulte a documentação do Sling e Mapeamentos para Resolução de Recursos e Recursos para obter mais informações.
Os mapeamentos de duas listas que o Resolvedor de Recursos do JCR avalia (de cima para baixo) para encontrar uma correspondência.
Essas listas podem ser visualizadas (junto com informações de configuração) sob a opção JCR ResourceResolver do console Felix; por exemplo, https://<*host*>:<*port*>/system/console/jcrresolver
:
Configuração
Mostra a configuração atual (conforme definido para Apache Sling Resource Resolver).
Teste de configuração
Isso permite inserir um URL ou caminho de recurso. Clique em Resolver ou Mapa para confirmar como o sistema transformará a entrada.
Entradas do Mapa do ResolvedorA lista de entradas usadas pelos métodos ResourceResolver.resolve para mapear URLs para Recursos.
Mapeamento de
entradas do mapaA lista de entradas usadas pelos métodos ResourceResolver.map para mapear caminhos de recursos para URLs.
As duas listas mostram várias entradas, incluindo as definidas como padrões pelo(s) aplicativo(s). Geralmente, o objetivo é simplificar os URLs para o usuário.
As listas emparelham um 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$
acionará 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.
Há muitos recursos disponíveis que ajudam a explicar como definir expressões regulares; por exemplo https://www.regular-expressions.info/.
Em uma instalação padrão de AEM, você pode encontrar a pasta:
/etc/map/http
Essa é a estrutura usada ao definir mapeamentos para o protocolo HTTP. Outras pastas ( sling:Folder
) podem ser criadas em /etc/map
para quaisquer outros protocolos que você deseja mapear.
Para criar o mapeamento que prefixa qualquer solicitação para https://localhost:4503/ com /content
:
Usando o CRXDE, navegue até /etc/map/http
.
Crie um novo nó:
sling:Mapping
Tipo: esse tipo de nó é destinado a esses mapeamentos, embora seu uso não seja obrigatório.
Nome localhost_any
Clique em Salvar tudo.
Adicione as seguintes propriedades a este nó:
Nome sling:match
Tipo String
Valor localhost.4503/
Nome sling:internalRedirect
Tipo String
Valor /content/
Clique em Salvar tudo.
Isso lidará com uma solicitação como:
localhost:4503/geometrixx/en/products.html
como se:
localhost:4503/content/geometrixx/en/products.html
tinham sido solicitados.
Consulte Resources na Documentação do Sling para obter mais informações sobre as propriedades do sling disponíveis e como elas podem ser configuradas.
Você pode usar /etc/map.publish
para manter as configurações do ambiente de publicação. Eles devem ser replicados e o novo local ( /etc/map.publish
) configurado para o Local de mapeamento do Apache Sling Resource Resolver do ambiente de publicação.