OSGi é um elemento fundamental na pilha tecnológica do AEM. É usado para controlar os pacotes compostos de AEM e sua configuração.
OSGi "O fornece as primitivas padronizadas que permitem que os aplicativos sejam construídos a partir de componentes pequenos, reutilizáveis e colaborativos. Esses componentes podem ser compostos em um aplicativo e implantados".
Essa funcionalidade permite o fácil gerenciamento de pacotes, pois eles podem ser interrompidos, instalados e iniciados individualmente. As interdependências são tratadas automaticamente. Cada componente OSGi (consulte a Especificação OSGi) está contido em um dos vários pacotes. Ao trabalhar com AEM, há vários métodos de gerenciamento das definições de configuração desses pacotes; consulte Configuração do OSGi para obter mais detalhes e as práticas recomendadas.
As seguintes configurações de OSGi (listadas de acordo com o pacote) são relevantes para a implementação do projeto. Nem todas as configurações listadas precisam ser ajustadas, algumas são mencionadas para ajudar você a entender como o AEM opera.
A lista destina-se a servir de orientação e não é exaustiva. Nem todos os pacotes estão listados, nem todos os parâmetros para alguns dos pacotes que estão.
A configuração necessária varia de projeto para projeto.
Consulte o console da Web para obter valores usados e informações detalhadas sobre parâmetros.
A ferramenta de comparação da configuração do OSGi, parte da Ferramentas AEM, pode ser usado para listar as configurações OSGi padrão.
Outros pacotes podem ser necessários para áreas específicas de funcionalidade dentro do AEM. Nesses casos, os detalhes da configuração podem ser encontrados na página relacionada à funcionalidade apropriada.
Ouvinte de Evento de Replicação AEM Configurar:
A variável Modos de execução, em que os eventos de replicação são distribuídos aos ouvintes. Por exemplo, se definido como autor, é o sistema que "inicia" a replicação.
Adicionar o modo de execução publicar se o código do projeto processar eventos de replicação (replicação reversa) em um ambiente de publicação. Por exemplo, quando o Dispatcher é usado para liberar do ambiente de publicação ou quando ocorre a replicação padrão para outras instâncias de publicação.
Ouvinte de alteração do repositório AEM Configurar:
Repositório do cliente do CRX Sling Configurar o acesso ao repositório de conteúdo subjacente.
Console de gerenciamento do Apache Felix OSGi Configurar:
Certifique-se de configurar o seguinte:
Nome do usuário e Senha, as credenciais para acessar o próprio Console de gerenciamento da Web Apache Felix.
A senha deve ser alterada após a instalação inicial para garantir que o segurança da sua instância.
Essa configuração deve ser feita usando o Felix Console, pois é necessária na inicialização - antes que o repositório esteja disponível.
Agente de dados de solicitação personalizável do Apache Sling Configurar:
request.log
). Esse arquivo de log é essencial ao analisar o desempenho ou a funcionalidade de depuração relacionada à cadeia da Web. Ele está emparelhado com o Logger de solicitação do Apache Sling.Consulte Registro de AEM e Log do Sling.
Pool de threads de evento do Apache Sling Configurar:
Tamanho mínimo do pool e Tamanho máximo do pool, o tamanho do pool usado para armazenar threads de eventos.
Tamanho da fila, o tamanho máximo da fila de threads se o pool estiver esgotado.
O valor recomendado é -1
porque define a fila como ilimitada. Se um limite for definido, poderão ocorrer perdas quando ele for excedido.
A alteração dessas configurações pode ajudar no desempenho em cenários com um alto número de eventos. Por exemplo, uso intenso de DAM do AEM ou Fluxo de trabalho.
Os valores específicos para o seu cenário devem ser estabelecidos por meio de testes.
Essas configurações podem afetar o desempenho da sua instância, portanto, não as altere sem motivo e devida consideração.
Apache Sling GET Servlet Configure alguns aspectos da renderização:
Essa configuração é definida automaticamente para instâncias de produção se você executar o AEM no Modo de produção pronto.
Manipulador de JavaScript do Apache Sling Configure as definições para a compilação de arquivos .java como scripts (servlets).
Certas configurações podem afetar o desempenho. Desative essas configurações sempre que possível, especialmente para uma instância de produção.
VM de origem e VM de destino, defina a versão do JDK usada como a JVM de tempo de execução
para instâncias de produção:
Instalador do Apache Sling JCR Esses parâmetros provavelmente não precisam de configuração, mas podem ser úteis ao desenvolver ou depurar. Por exemplo, as pastas de instalação podem ser úteis para fazer check-in ou check-out ou para criar um pacote.
Expressão regular de nome das pastas de instalação e Profundidade máxima da hierarquia de pastas de instalação - especifique onde e em qual profundidade as pastas do repositório são pesquisadas em busca de recursos a serem instalados. Quando um curinga é usado (como em .*/install) todas as correspondências apropriadas são pesquisadas, por exemplo, /libs/sling/install
e /libs/cq/core/install
.
Caminho de pesquisa, lista de caminhos em que o jcrinstall procura recursos a serem instalados, juntamente com um número indicando o fator de ponderação desse caminho.
Manipulador de eventos de trabalho do Apache Sling Configure parâmetros que gerenciam o agendamento de trabalhos:
Intervalo de repetição, Máximo de tentativas, Máximo de Trabalhos Paralelos, Confirmar tempo de espera, entre outros.
Alterar essas configurações pode melhorar o desempenho em cenários com um alto número de trabalhos; por exemplo, uso intenso de DAM e Workflows de AEM.
Os valores específicos para o seu cenário devem ser estabelecidos por meio de testes.
Não altere essas configurações sem motivo; altere somente após a devida consideração.
Manipulador de script JSP do Apache Sling Configure as definições relevantes de desempenho para o manipulador de script JSP. Para melhorar o desempenho, você deve desativar o máximo possível.
Em particular para instâncias de produção:
Essa configuração é definida automaticamente para instâncias de produção se você executar o AEM no Modo de produção pronto.
Configuração de registro do Apache Sling Configurar:
Nível de registro e Arquivo de log, para definir a localização e o nível de log da configuração de log central (error.log). O nível pode ser definido como um de DEBUG
, INFO
, WARN
, ERROR
, e FATAL
.
Número de arquivos de log e Limite do arquivo de log para definir o tamanho e a rotação da versão do arquivo de log.
Padrão de mensagem define o formato das mensagens de log.
Consulte Registro de AEM e Log do Sling.
Configuração do logger de log do Apache Sling (configuração de fábrica) Configurar:
Nível de registro, Arquivo de log e Formato da mensagem para definir detalhes do arquivo de log e mensagens.
Logger para definir a categoria; por exemplo, registre apenas para com.day.cq.
Ao usar Configurações de fábrica, qualquer número de configurações adicionais pode ser adicionado para atender aos vários níveis de log e categorias necessários.
Essas configurações são úteis durante o desenvolvimento; por exemplo, para registrar mensagens de TRACE para um serviço específico em um arquivo de log específico.
Essas configurações são úteis em um ambiente de produção; por exemplo, para ter mensagens sobre um serviço específico registrado em um arquivo de log individual para facilitar o monitoramento.
Consulte Registro de AEM e Log do Sling.
Configuração do gravador de log do Apache Sling (configuração de fábrica) Configurar:
Arquivo de log para definir a existência de um arquivo de log.
Número de arquivos de log para definir a rotação da versão.
O gravador pode ser usado por um Configuração do logger de log do Apache Sling configuração.
Essas configurações são úteis durante o desenvolvimento; por exemplo, para registrar mensagens de TRACE para um serviço específico em um arquivo de log específico.
Essas configurações são úteis em um ambiente de produção; por exemplo, para ter mensagens sobre um serviço específico registrado em um arquivo de log individual para facilitar o monitoramento.
Consulte Registro de AEM e Log do Sling.
Apache Sling Main Servlet Configurar:
Serviço de tipo MIME do Apache Sling Configurar:
GET
solicitação em um arquivo para definir o cabeçalho de tipo de conteúdo correto para vincular o tipo de arquivo e o aplicativo.Filtro referenciador do Apache Sling Para resolver problemas de segurança conhecidos com a falsificação de solicitação entre sites (CSRF) no CRX WebDAV e no Apache Sling, você deve configurar o filtro Referenciador.
O serviço de filtro referenciador é um serviço OSGi que permite configurar:
Consulte a Lista de verificação de segurança - Problemas com a falsificação da solicitação entre sites para obter mais detalhes.
O Filtro referenciador do Apache Sling depende da instalação de um pacote de correção rápida.
Logger de solicitação do Apache Sling Configurar:
vários parâmetros para definir como as solicitações são registradas.
Habilitar Log de Solicitação, para ativar ou desativar.
Habilitar Log de Acesso, para ativar ou desativar.
Emparelhado com o Agente de dados de solicitação personalizável do Apache Sling.
Consulte Registro de AEM e Log do Sling.
Fábrica do Apache Sling Resource Resolver Configure os aspectos centrais da resolução de recursos do Sling:
Caminhos de pesquisa de recursos, adicione qualquer caminho específico do projeto (mas não remova /libs
ou /apps
).
URLs virtuais para definir os mapeamentos de URL personalizado.
Mapeamentos de URL para definir aliases. Por exemplo, de /content
para /
.
Localização do mapeamento, a configuração do mapeador externalizada em /etc/map
.
Use a instalação local (por exemplo, use https://localhost:4502/system/console/jcrresolver
) para determinar qual Resource Resolver está ativo.
Consulte: https://cwiki.apache.org/confluence/display/SLING/Flexible+Resource+Resolution.
Configure essas opções no repositório.
Caso contrário, as alterações feitas no Mapeamentos de URL o uso do console Felix pode ser substituído pelo AEM na próxima inicialização.
Resolvedor de Apache Sling Servlet/Script e Manipulador de erros O Sling Servlet e o Script Resolver têm várias tarefas:
É usado como o ServletResolver
para selecionar o Servlet ou Script que chamará para lidar com a solicitação.
Atua como o SlingScriptResolver
.
Ele gerencia o tratamento de erros implementando o ErrorHandler
usando o mesmo algoritmo para selecionar servlets e scripts de tratamento de erros que são usados para resolver servlets e scripts de processamento de solicitações.
Vários parâmetros podem ser definidos, incluindo:
Caminhos de execução - Lista os caminhos para procurar scripts executáveis. Ao configurar caminhos específicos, você pode limitar quais scripts podem ser executados. Se nenhum caminho estiver configurado, o padrão será usado ( /
= root), permitindo a execução de todos os scripts.
Se um valor de caminho configurado terminar com uma barra, a subárvore inteira será pesquisada. Sem essa barra à direita, o script só é executado se for uma correspondência exata.
Script de usuário - Essa propriedade opcional pode especificar a conta de usuário do repositório usada para ler os scripts. Se nenhuma conta for especificada, a variável admin
é usado por padrão.
Extensões padrão - A lista de extensões para as quais o comportamento padrão é usado. O último segmento de caminho do tipo de recurso pode ser usado como o nome do script.
Configuração de proxy de componentes HTTP do Apache - A configuração de proxy para todo o código usando o cliente HTTP do Apache, usada quando um HTTP é criado. Por exemplo, sobre replicação.
Ao criar uma configuração, não altere a configuração de fábrica. Em vez disso, crie uma configuração de fábrica para esse componente usando o gerenciador de configurações disponível aqui: https://localhost:4502/system/console/configMgr/. A configuração de proxy está disponível em org.apache.http.proxyconfigurator.
No AEM 6.0 e versões anteriores, o proxy era configurado no Day Commons HTTP Client. A partir do AEM 6.1 e versões posteriores, a configuração de proxy foi movida para a "Configuração de proxy de componentes HTTP do Apache" em vez da configuração "Day Commons HTTP Client".
Day CQ Antispam Configure o serviço antisspam (Akismet) usado. Esse recurso exige que você registre o seguinte:
Gerenciador de biblioteca de HTML do Adobe Granite Configure para controlar o manuseio de bibliotecas de clientes (css ou js) incluindo, por exemplo, como a estrutura subjacente é vista.
Para instâncias de produção:
Para o desenvolvimento de JS (especialmente quando há firebugging/depuração):
Ao alterar a configuração de Minify ou Gzip, exclua o conteúdo do cache clientlibs. Consulte Artigo da knowledge base para obter detalhes.
Essa configuração é definida automaticamente para instâncias de produção se você executar o AEM no Modo de produção pronto.
Manipulador de autenticação de cabeçalho HTTP CQ diário Configurações em todo o sistema para o método de autenticação básico da solicitação HTTP.
Ao usar grupos de usuários fechados, você pode configurar, entre outros, o seguinte:
Serviço Day CQ Verificador de links Marque e, se necessário, configure:
Período do Agendador para definir o intervalo em que os links externos devem ser verificados automaticamente.
Marcar Intervalo de Tolerância de Link Incorreto para o período após o qual um link externo malsucedido é considerado ruim.
Padrões de substituição de verificação de link, para definir os caminhos que serão excluídos da verificação de links.
Tarefa do Verificador de Links CQ Diário Defina as configurações de uma única tarefa do verificador de links (uma tarefa que verifica um link externo):
Verifique os intervalos definidos em Intervalo de teste de link correto e Intervalo de teste de link incorreto
Os vários parâmetros relacionados a proxies para acesso à Internet e NTLM necessários para acesso externo ao verificar um link.
Serviço de email Day CQ Configurar o nome do host e os detalhes de acesso do servidor de e-mail. Consulte a seção Configurando o Serviço de E-mail.
Informativo MCM CQ do dia Defina as várias configurações usadas com o informativo.
Day CQ Root Mapping Configurar:
/
" é redirecionado para.Há duas interfaces do usuário disponíveis no AEM:
Usando o mapeamento de raiz AEM, é possível configurar a interface do usuário que você deseja ter como padrão para sua instância:
Para ter a interface habilitada para toque como a interface padrão, Caminho de destino A deve apontar para o seguinte:
/projects.html
Para ter a interface clássica como padrão, a variável Caminho de destino A deve apontar para o seguinte:
/welcome.html
Em uma instalação padrão, a interface otimizada para toque é a interface padrão.
Manipulador de autenticação SSO do Adobe Granite - Configurar detalhes de SSO (Logon único). Esses detalhes geralmente são necessários nas configurações do autor corporativo, geralmente com LDAP.
Várias propriedades de configuração estão disponíveis:
Caminho
O caminho para o qual este manipulador de autenticação está ativo. Se esse parâmetro for deixado em branco, o manipulador de autenticação será desativado. Por exemplo, o caminho / faz com que o manipulador de autenticação seja usado para todo o repositório.
Classificação do serviço
O valor de Classificação do OSGi Framework Service é usado para indicar a ordem usada para chamar esse serviço. Esse valor é um int
valor em que valores mais altos designam maior precedência.
O valor padrão é 0
.
Nomes do cabeçalho
Os nomes dos cabeçalhos que podem conter uma ID de usuário.
Nomes de cookies
Os nomes dos cookies que podem conter uma ID de usuário.
Nomes de Parâmetros
Os nomes dos parâmetros de solicitação que podem fornecer a ID do usuário.
Mapa do usuário
Para usuários selecionados, o nome de usuário extraído da solicitação HTTP pode ser substituído por outro no objeto de credenciais. O mapeamento é definido aqui. Se o nome do usuário admin
for exibido em ambos os lados do mapa, o mapeamento será ignorado. O caractere "=" deve ser escapado com um "" à esquerda.
Formato
Indica o formato em que a ID de usuário é fornecida. Utilização:
Basic
se a ID do usuário estiver codificada no formato de Autenticação Básica HTTPAsIs
se a ID do usuário for fornecida em texto sem formatação ou qualquer valor de expressão regular aplicada, deverá ser usado como está ou qualquer expressão regularFiltro de depuração WCM CQ diário Isso é útil ao desenvolver, pois permite o uso de sufixos como ?debug=layout ao acessar uma página. Por exemplo, https://localhost:4502/cf#/content/geometrixx/en/support.html?debug=layout fornece informações de layout que podem ser de interesse do desenvolvedor.
Filtro WCM CQ do dia Configurar:
Modo WCM para definir o modo padrão.
Em uma instância de autor, esse modo pode ser edit
, disable,preview
ou analytics
.
Os outros modos podem ser acessados pelo sidekick ou pelo sufixo ?wcmmode=disabled
O pode ser usado para emular um ambiente de produção.
Em uma instância de publicação, esse modo deve ser definido como disabled
para garantir que nenhum outro modo esteja acessível.
Essa configuração é definida automaticamente para instâncias de produção se você executar o AEM no Modo de produção pronto.
Configurador do verificador de link WCM CQ diário Configurar:
Fábrica do gerenciador de página do WCM CQ do dia Configurar:
Processador de página WCM CQ diário Configurar:
jcr:Event
.Rastreador de impressões de página do Adobe Para uma instância do autor, configure como o seguinte:
-/libs/wcm/stats/tracker
Essa configuração permite solicitações anônimas para o serviço de rastreamento.
Consulte Impressões de página para obter mais informações.
Estatísticas de página WCM CQ do dia Para uma instância de publicação, configure:
URL para enviar dados para configurar o URL usado para rastrear estatísticas de página (é essencial se uma solicitação do rastreador passar pelo Dispatcher); por exemplo, o padrão é https://localhost:4502/libs/wcm/stats/tracker
.
Script de rastreamento habilitado para ativar ( true
) ou desativar ( false
) a inclusão do script de rastreamento nas páginas. O valor padrão é false
.
Consulte Impressões de página para obter mais informações.
Gerenciador de versão Day CQ WCM Controle se e como as versões são gerenciadas em seu sistema:
Criar versão na ativação, ativado em uma instalação padrão
Ativar limpeza
Limpar caminhos, os caminhos que uma ação de pesquisa pesquisa pesquisa.
Caminhos de controle de versão implícitos, os caminhos em que o controle de versão implícito está ativo.
Idade máxima da versão, a idade máxima (em dias) de uma versão
Número máximo de versões, o número máximo de versões a serem mantidas
Consulte Limpeza de versão para obter mais informações.
Serviço de notificação por email do fluxo de trabalho do Day CQ Defina as configurações de email para notificações enviadas por um fluxo de trabalho.
Fábrica de analisador de HTML de reescrita CQ
Controla o Analisador de HTML para o reescritor CQ.
eBay
) para letras minúsculas (por exemplo, ebay
). Você pode desativar essa configuração para preservar os atributos de camel case. Essa configuração é útil ao usar estruturas de front-end, como o Angular 2.Pool de Conexões JDBC do Day Commons Configure o acesso a um banco de dados externo que está sendo usado como uma fonte de conteúdo.
Uma configuração de fábrica, para que várias instâncias possam ser configuradas.
Reescrita CDN A comunicação entre o AEM e uma CDN deve ser assegurada para que os ativos/binários sejam entregues a um usuário final de forma segura. Esse processo envolve as duas tarefas a seguir:
O AEM fornece um reescritor para reescrever URLs de ativos internos em URLs CDN externos. Ele substitui links a serem transmitidos para o CDN, incluindo uma assinatura JWS e um tempo de expiração para permitir que o ativo seja acessado com segurança. Esse recurso deve ser usado em instâncias de autor.
O fluxo total é o seguinte:
O usuário se autentica com AEM e solicita uma página com ativos.
A página solicitada contém um ativo semelhante a /content/dam/geometrixx-media/articles/paladin_trailer.jpg/jcr:content/renditions/cq5dam.thumbnail.319.319.png
O Rewriter transforma o link em um URL CDN contendo uma Assinatura JWS:
CDN_domain/content/dam/geometrixx-media/articles/paladin_trailer.jpg/_jcr_content/renditions/cq5dam.thumbnail.319.319.png?cdn_sign=JWS_SIGNATURE
O navegador do usuário encaminha a solicitação de ativo para o servidor CDN
O CDN deve ser configurado para encaminhar a solicitação ao AEM junto com o cdn_sign
parâmetro.
Um Manipulador de autenticação valida a cdn_sign
e retorna o ativo ao CDN, que é então entregue ao usuário
O fluxo entre o navegador do usuário, o CDN e o AEM pode ser visualizado da seguinte maneira.
Esse recurso só é ativado para instâncias de autor AEM.
CDNConfigServiceImpl Fornece configurações de CDN
O recurso de reescrita CDN pode ser habilitado fornecendo Nome de domínio de distribuição CDN na configuração para com.adobe.cq.cdn.rewriter.impl.CDNConfigServiceImpl.
O serviço também contém outras opções de configuração, como ativar/desativar a reescrita de CDN, prefixos de caminho para os quais a reescrita de CDN é executada, valores TTL e protocolo (HTTP ou HTTPS).
CDNRewriter Um reescritor para reescrever URLs de imagens internas em URLs CDN
A variável Atributos da tag O valor em com.adobe.cq.cdn.rewriter.impl.CDNRewriter pode ser definido para que somente os links de imagem seletiva sejam regravados.