Ambiente
Experience Manager 6.4
Problema/Sintomas
Se o Verificador de links estiver configurado para não realizar nenhuma ação se um link estiver quebrado. Nesse caso, como desabilitar o verificador de links externos da validação de links? Ao fazer a criação de perfis da CPU e analisar despejos de encadeamentos, a verificação de link está afetando o desempenho e gostaríamos de desativá-la.
Plano de fundo: Sempre que um site é carregado no AEM, o Verificador de links verifica automaticamente os links incorporados em todas as páginas de conteúdo e marca cada link como Válido ou Inválido.
Isso pode retardar uma instância ou um site devido a um grande número de avisos do Verificador de links no log. Uma decisão pode ser tomada para desativar alguma verificação de link.
Observação: o Verificador de links não deve estar ativado em instâncias de publicação.
Como desabilitar o Verificador de links ou configurar para marcar links como válidos no AEM
Adicionar x-cq-linkchecker="valid"
no uma tag para garantir que os links estejam sempre marcados como válidos pelo Verificador de links.
Opcionalmente, use x-cq-linkchecker="skip"
no uma tag O Verificador de links nem sequer verificará a validade.
Acesse a Configuração do Console da Web AEM 1.
Procurar por Transformador Day CQ Link Checker.
Verifique a Desativar verificação e clique em Salvar.
Acesse a Configuração do Console da Web AEM 1.
Procurar por Serviço Day CQ Link Checker.
Edite o Padrões de Substituição de Verificação de Link parâmetro.
Exemplo 1: sistema/
Nenhum link externo que inicie com o sistema será verificado. Adicione mais padrões de substituição a esta seção clicando no sinal +.
Exemplo 2:
Isso marcará todos os links como um avanço válido.
Recomendado: exclua todos os nós em /var/linkchecker para impedir que o Verificador de links verifique novamente os URLs.
{1}http://host:port/system/console/configMgr
Observação:
Se você usar service.Special_link_pattern, o Verificador de links ainda verificará o URL para ver se ele é válido em termos de caracteres e estrutura.
Desative programaticamente a verificação de links externos
A adição desse código no componente de página jsp impede que a verificação de link externo seja feita ao chamar LinkCheckerSettings.fromRequest(slingRequest).setIgnoreExternals(true). Na maioria dos casos, você só implementaria em instâncias de publicação, não em autor. Aqui está um código para demonstrar:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
% org.apache.sling.runmode.RunMode runmode = sling.getService(org.apache.sling.runmode.RunMode. class ); String runmodes = runmode.getCurrentRunModes(); boolean isPublish = false ; String expectedRunModes = { "publish" }; if (runmode.isActive(expectedRunModes)) { isPublish = true ; } if (isPublish) { LinkCheckerSettings s = LinkCheckerSettings.fromRequest(slingRequest); s.setIgnoreExternals( true ); } % |
---|
1 2 3 |
% s.setIgnoreExternals( false ); % |
---|