Mapeamento de recursos resource-mapping
O mapeamento de recursos é usado para definir redirecionamentos, URLs personalizadas 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 seu site. - Defina um redirecionamento para que todas as solicitações da variável
/content/en/gateway
página do seu site são redirecionadas parahttps://gbiv.com/
.
Um mapeamento HTTP possível prefixos 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/geometrixx/en/products.html
a ser acessado usando:
localhost:4503/geometrixx/en/products.html
como o mapeamento adicionará automaticamente o prefixo /content
para /geometrixx/en/products.html
.
Exibindo Definições de Mapeamento viewing-mapping-definitions
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) no JCR ResourceResolver 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 Resolvedor de Recursos do Apache Sling.
-
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 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 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:
http://localhost:4503/welcome
para:
http://localhost:4503/libs/cq/core/content/welcome.html
Novas definições de mapeamento são criadas no repositório.
Criando definições de mapeamento no AEM creating-mapping-definitions-in-aem
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
) pode ser criada em /etc/map
para quaisquer outros protocolos que você queira mapear.
Configurar um redirecionamento interno para /content configuring-an-internal-redirect-to-content
Para criar o mapeamento que prefixa qualquer solicitação para http://localhost:4503/ com /content
:
-
Usando o CRXDE, navegue até
/etc/map/http
. -
Crie um novo nó:
-
Tipo
sling:Mapping
Esse tipo de nó é destinado 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/
- Tipo
-
Nome
sling:internalRedirect
- Tipo
String
- Valor
/content/
- Tipo
-
-
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.
/etc/map.publish
para manter as configurações do ambiente de publicação. Eles devem então ser replicados e o novo local ( /etc/map.publish
) configurado para o Localização do mapeamento do Resolvedor de Recursos do Apache Sling do ambiente de publicação.