aem - Linkchecker 在 AEM 6.2 中的工作原理

标签 aem

我正在开发 linkchecker,想知道 AEM 何时将 URL 保存在/var/linkchecker 中以及基于什么基础?

如果我打开一个链接,那么它会保存它,或者它有一个轮询,就像它遍历完整的内容并将其放入/var/linkchecker 中。

哪个java类有助于在其存储目录中存储有效或无效的链接?

最佳答案

LinkChecker 基于创建和更新时/content(和子)节点的事件处理程序。所有内容都会根据允许的协议(protocol)和(可配置的)外部站点链接进行解析和验证。

外部链接

所有验证均在后台异步完成,并根据验证结果更新 HTML。

/var/linkchecker 是外部链接的缓存。结果基于对外部链接的简单 GET 请求,以便优化流程。 HTTP 200/30x 响应意味着链接有效。 AEM 在请求验证外部链接之前会查看此缓存,以优化页面处理。这也意味着链接验证不是实时,并且延迟与服务器上的负载成正比。

所有已检查的链接都可以通过 /etc/linkchecker.html 屏幕查看,您可以在其中请求重新验证并刷新链接的状态。

您可以通过/system/console/configMgr 下的 Day CQ Link Checker Service 配置来配置此背景检查的频率。默认间隔为 5 秒(scheduler.period 参数)。

在配置管理器/system/console/configMgr 下,您会发现许多其他控制此功能的 Day CQ Link * 配置。

例如,Day CQ Link Checker Transformer 包含需要由链接检查器转换的所有元素的配置。

类似地,Day CQ Link Checker Info Storage Service 配置链接缓存。

内部链接

内部链接将被忽略,除非它们使用 FQDN 和外部 url(作者通常不会这样做)。唯一的异常(exception)是在 Multi-Tenancy 环境中,其中一个站点的页面链接到另一个站点,并且所有映射信息都存储在 sling 映射中。

关于aem - Linkchecker 在 AEM 6.2 中的工作原理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43201494/

相关文章:

aem - CQ5 : How to programmatically find out the Resource given a URL?

osgi - 使用 SlingScriptHelper#getService() 方法过滤 OSGi 服务

html - 使用 BreadcrumbList 获取 SEO 错误

aem - 视觉上无法识别 html

java - OSGi Bundle 状态不是 Active(CQ5 Maven 项目)为什么?

seo - 在 AEM 中,我想在 &lt;script&gt;&lt;/script&gt; 标签内添加 <sly></sly> 标签。模式内的多字段选项

java - 如何检查页面是否有内容?

extjs - selectionchanged 事件针对 xtype 选择触发两次

aem - 如何在 JAVA 中删除 CQ 节点的属性

extjs - AEM 6.1 使用的 Ext JS 版本