Show Menu
主题×

复制

复制代理是Adobe Experience Manager(AEM)的核心,它是用于:
  • 将内容从作者发布 (激活)到发布环境。
  • 显式刷新Dispatcher缓存中的内容。
  • 将用户输入(例如,表单输入)从发布环境返回到创作环境(在创作环境的控制下)。
请求将 排队 ,到相应的代理处理。
用户数据(用户、用户组和用户配置文件)不会在创作实例和发布实例之间复制。
对于多个发布实例,在启用用户同步时,用户数 据是Sling 分发的。

从作者复制到发布

复制到发布实例或调度程序的步骤有:
  • 作者要求发布(激活)某些内容;这可以通过手动请求或已预配置的自动触发器启动。
  • 请求将传递给相应的默认复制代理;一个环境可以具有多个默认代理,这些代理将始终为此类操作选择。
  • 复制代理将内容“打包”并将其放在复制队列中。
  • 在“网站”选项卡中, 为各个页面设置彩色状态指示符
  • 内容从队列中提取,并使用配置的协议传输到发布环境;通常为HTTP。
  • 发布环境中的servlet接收请求并发布接收到的内容;默认servlet为 https://localhost:4503/bin/receive
  • 可以配置多个创作和发布环境。

从发布复制到作者

某些功能允许用户在发布实例上输入数据。
在某些情况下,需要一种称为反向复制的复制类型才能将这些数据从重新分发到其他发布环境的创作环境。 出于安全考虑,必须严格控制从发布到创作环境的任何通信。
反向复制使用发布环境中引用创作环境的代理。 此代理将数据放入外箱中。 此发件箱与创作环境中的复制监听器相匹配。 监听器轮询输出框以收集所输入的任何数据,然后根据需要分发它。 这可确保创作环境控制所有流量。
在其他情况下,如社区功能(例如,论坛、博客、评论和评论)中,在发布环境中输入的用户生成内容(UGC)的数量难以通过复制在AEM实例之间有效同步。
AEM Communities 从不将复制用于UGC。 相反,Communities的部署需要UGC的公用存储(请参 阅社区内容存储 )。

复制——开箱即用

包含在AEM标准安装中的we-retail网站可用于说明复制。
要按照此示例操作并使用默认复制代理,您需要将 AEM安装 :
  • 端口上的创作环境 4502
  • 端口上的发布环境 4503
默认为已启用 :
  • 作者代理:默认代理(发布)
默认情况下有效禁用(自AEM 6.1起):
  • 作者代理:反向复制代理(publish_reverse)
  • 发布时的代理:反向复制(发件箱)
要检查代理或队列的状态,请使用“工具” 控制台

复制(创作到发布)

  1. 导航到创作环境上的支持页面。 https://localhost:4502/content/we-retail/us/en/experience.html <pi>
  2. 编辑页面以添加新文本。
  3. 激活页面 ,以发布更改。
  4. 在发布环境中打开支持页面: https://localhost:4503/content/we-retail/us/en/experience.html
  5. 您现在可以看到您在作者中输入的更改。
此复制操作由创作环境执行:
  • **默认代理(发布)**此代理将内容复制到默认发布实例。 有关此(配置和日志)的详细信息,可从创作环境的“工具”控制台访问;或: https://localhost:4502/etc/replication/agents.author/publish.html .

复制代理——开箱即用

标准AEM安装中提供以下代理:
  • 默认代理 用于从作者复制到发布。
  • 反向复制 -用于从发布复制到作者。 反向复制不用于社区功能,如论坛、博客和评论。 由于未启用发件箱,因此会有效地禁用它。 使用反向复制需要自定义配置。
  • 静态代理这是“将节点的静态表示存储到文件系统中的代理”。 例如,使用默认设置时,内容页面和dam资产会以HTML或相 /tmp 应的资产格式存储在下方。 请参阅 Settings 配置 Rules 的选项卡和选项卡。 这是请求的,这样当直接从应用程序服务器请求页面时,内容就可以看到。 这是一个专用代理,并且(可能)大多数情况下都不需要。

复制代理——配置参数

在工具控制台中配置复制代理时,对话框中有四个选项卡可用:

设置

  • 名称
    复制代理的唯一名称。
  • 描述
    此复制代理将服务的用途的说明。
  • 启用
    指示复制代理当前是否处于启用状态。
    启用代理 ,队列将显示为:
    • 在处理项 时处于活动状态。
    • 队列为 空时空闲。
    • 当项目在队列中 ,但无法处理时,将阻止此项目;例如,当接收队列被禁用时。
  • 序列化类型
    序列化类型:
    • 默认 :设置是否自动选择代理。
    • 调度程序刷新 :如果代理用于刷新调度程序缓存,请选择此选项。
  • 重试延迟
    如果遇到问题,则两次重试之间的延迟(以毫秒为单位)。
    默认: 60000
  • 代理用户 ID
    根据环境的不同,代理将使用此用户帐户执行以下操作:
    • 从创作环境中收集和打包内容
    • 在发布环境中创建和写入内容 将此字段留空以使用系统用户帐户(sling中定义为管理员用户的帐户;默认情况下为 admin )。
    对于创作环境中的代理,此帐 户必须 具有对要复制的所有路径的读取访问权限。
    对于发布环境中的代理,此帐 户必须具有 创建/写入权限才能复制内容。
    这可用作选择特定内容进行复制的机制。
  • 日志级别
    指定用于日志消息的详细程度。
    • Error :将只记录错误
    • Info :将记录错误、警告和其他信息性消息
    • Debug :消息中将使用高级详细信息,主要用于调试目的 默认: Info
  • 使用反转复制
    指示此代理是否将用于反向复制;从发布到创作环境返回用户输入。
  • 别名更新
    选择此选项可向Dispatcher启用别名或虚路径失效请求。 另请参阅配 置调度程序刷新代理

传输

  • URI
    这将指定目标位置的接收servlet。 特别是,您可以在此处指定目标实例的主机名(或别名)和上下文路径。
    例如:
    • 默认代理可以复制到 https://localhost:4503/bin/receive
    • 调度程序刷新代理可以复制到 https://localhost:8000/dispatcher/invalidate.cache 此处指定的协议(HTTP或HTTPS)将决定传输方法。
    对于Dispatcher Flush代理,仅当使用基于路径的虚拟主机条目来区分农场时,才使用URI属性,您使用此字段来定位要失效的农场。 例如,农场#1的虚拟主机为, www.mysite.com/path1/* 而农场#2的虚拟主机为 www.mysite.com/path2/* 。 您可以使用的URL来 /path1/invalidate.cache 定位第一个农场和 /path2/invalidate.cache 第二个农场。
  • 用户
    要用于访问目标的帐户的用户名。
  • 密码
    用于访问目标的帐户的口令。
  • NTLM 域
    NTML身份验证的域。
  • NTLM 主机
    用于NTML身份验证的主机。
  • 启用宽松 SSL
    如果希望接受自认证SSL证书,请启用。
  • 允许过期的证书
    如果希望接受过期的SSL证书,则启用。

代理

仅当需要代理时,才需要以下设置:
  • 代理主机
    用于传输的代理的主机名。
  • 代理端口
    代理的端口。
  • 代理用户
    要使用的帐户的用户名。
  • 代理密码
    要使用的帐户的口令。
  • 代理 NTLM 域
    代理NTLM域。
  • 代理·NTLM 主机
    代理NTLM域。

扩展

  • 接口
    您可以在此处定义要绑定到的套接字接口。
    这将设置创建连接时使用的本地地址。 如果未设置,则将使用默认地址。 这对于指定要在多宿主系统或群集系统上使用的接口很有用。
  • HTTP 方法
    要使用的HTTP方法。
    对于调度程序刷新代理,它几乎始终为GET,不应更改(POST将是另一个可能的值)。
  • HTTP 头
    这些组件用于调度程序刷新代理,并指定必须刷新的元素。
    对于Dispatcher Flush Agent,三个标准条目不应该更改:
    • CQ-Action:{action}
    • CQ-Handle:{path}
    • CQ-Path:{path} 根据需要使用这些参数来指示刷新手柄或路径时要使用的操作。 子参数是动态的:
    • {action} 指示复制操作
    • {path} 指示路径 它们被与请求相关的路径/操作所取代,因此无需“硬编码”:
    如果您在建议的默认上下文之外的上下文中安装了AEM,则需要在HTTP标头中注册该上下文。 例如: CQ-Handle:/<*yourContext*>{path}
  • 关闭连接
    启用此选项,可在每次请求后关闭连接。
  • 连接超时
    尝试建立连接时应用的超时(以毫秒为单位)。
  • 套接字超时
    在建立连接后等待通信时应用的超时(以毫秒为单位)。
  • 协议版本
    协议版本;例如, 1.0 对于HTTP/1.0。

触发器

这些设置用于定义自动复制的触发器:
  • 忽略默认值
    如果选中此项,则从默认复制中排除代理;这意味着,如果内容作者发出复制操作,则不会使用它。
  • 修改
    此处,修改页面时将自动触发此代理的复制。 这主要用于Dispatcher Flush代理,但也用于反向复制。
  • 在分发时
    如果选中此项,代理将在修改后自动复制标记为要分发的任何内容。
  • 已到达开/关时间
    这将在发生为页面定义的正常或离线时间时触发自动复制(根据需要激活或取消激活页面)。 这主要用于调度程序刷新代理。
  • 接收时
    如果选中此项,则每当收到复制事件时,代理都将链式复制。
  • 无状态更新
    选中此选项后,代理将不强制进行复制状态更新。
  • 无版本控制
    选中此选项后,代理将不强制对激活的页面进行版本控制。

配置复制代理

有关使用MSSL将复制代理连接到发布实例的信息,请参 阅使用相互SSL复制

从创作环境配置复制代理

在创作环境的“工具”选项卡中,您可以配置位于创作环境(作者上的代理​ )或发布环境(发布时的 ​代理​)中的复制代理。 以下过程说明了创作环境的代理的配置,但可用于两者。
当调度程序处理创作或发布实例的HTTP请求时,来自复制代理的HTTP请求必须包含PATH头。 除了以下过程之外,您还必须将PATH头添加到客户端头的调度程序列表中。 (请参 阅/客户端(客户端标题) dispatcher-configuration.html#specifying-the-http-headers-to-pass-through-clientheaders
  1. 访问AEM中 “工具”选项卡。
  2. 单击 复制 (左窗格可打开文件夹)。
  3. 双击作 者上的代理 (左窗格或右窗格)。
  4. 单击相应的代理名称(即链接)以显示该代理的详细信息。
  5. 单击 编辑 ,打开配置对话框:
  6. 提供的值应足以用于默认安装。 如果进行了更改,请单 击确定 ,以保存这些更改(有关各个参数的详细信息,请参 阅复制代理——配置参数 )。
AEM的标准安装指定 admin 为默认复制代理中传输凭据的用户。
此帐户应更改为站点特定的复制用户帐户,并具有复制所需路径的权限。

配置反向复制

反向复制用于将发布实例上生成的用户内容返回到创作实例。 这通常用于调查和注册表单等功能。
出于安全原因,大多数网络拓扑不允许从 ** “非军事区”(向不受信任的网络(如Internet)提供外部服务的子网络)连接。
由于发布环境通常位于DMZ中,要将内容返回到创作环境,必须从创作实例启动连接。 这是通过以下方式完成的:
  • 布环境中 ,放置内容的发布框。
  • 创作环境中的代理(发布),它定期轮询外框以查找新内容。
对于AEM Communities ,复制不用于用户在发布实例上生成的内容。 请参阅 社区内容存储
为此,您需要:
创作环境中的反向复制代理 。它充当活动组件,用于从发布环境的发布框中收集信息:
如果要使用反向复制,请确保激活了此代理。
发布环境中的反向复制代理(一个外框) ,它是被动元素,就像它充当“外框”一样。 用户输入将放在此处,并由创作环境中的代理从中收集。

为多个发布实例配置复制

仅复制内容——不复制用户数据(用户、用户组和用户配置文件)。
要在多个发布实例之间同步用户数据,请启用 用户同步
安装后,已配置默认代理,以将内容复制到本地主机的端口4503上运行的发布实例。
要为其他发布实例配置内容复制,您需要创建和配置新的复制代理:
  1. 在AEM中 打开 “工具”选项卡。
  2. 在左 面板中 ,选择 复制,然后选择作者上的代理
  3. 选择 ​新建…….
  4. 设置标 和名 ,然后选择 复制代理
  5. 单击 创建 ,以创建新代理。
  6. 双击新代理项以打开配置面板。
  7. 单击 编辑 -将打开“ 代理设置”对话框——序列化类型已 定义为“默认”,但必须保留该属性。
    • 在“设 ”选项卡中:
      • 激活 已启用
      • 输入​ 说明 .
      • 将“重试 延迟 ”设置为 60000
      • 将序列化 类型保留 Default
    • 在“传输 ”选项卡中 :
      • 输入新发布实例所需的URI;例如, https://localhost:4504/bin/receive .
      • 输入用于复制的站点特定用户帐户。
      • 您可以根据需要配置其他参数。
  8. Click OK to save the settings.
然后,您可以通过在创作环境中更新和发布页面来测试操作。
这些更新将显示在所有已配置为上述内容的发布实例上。
如果遇到任何问题,可以检查创作实例上的日志。 根据所需的详细程度,您还可以将“日志级别 ”设置为使 用上述“ Debug 代理设置 ”对话框。
这可以与使用代理用户ID 结合使用 ,以选择不同的内容以复制到单个发布环境。 对于每个发布环境:
  1. 配置复制代理以复制到该发布环境。
  2. 配置用户帐户;具有读取将复制到该特定发布环境的内容所需的访问权限。
  3. 将用户帐户分配为复 制代理的代理用户Id

配置Dispatcher Flush Agent

安装中包含默认代理。 但是,如果要定义新代理,则仍需要某些配置,这同样适用:
  1. 在AEM中 打开 “工具”选项卡。
  2. 单击“ 部署 ”。
  3. 选择复 ,然后选 择发布时的代理
  4. 双击调度程序刷新 ,打开概述。
  5. 单击 编辑 -将打 开“代理设置 ”对话框:
    • 在“设 ”选项卡中:
      • 激活 已启用
      • 输入​ 说明 .
      • 将序列 化类型保留 , Dispatcher Flush 或在创建新代理时将其设置为。
      • (可选)选择“别 名更新 ”,以向Dispatcher启用别名或虚路径失效请求。
    • 在“传输 ”选项卡中 :
      • 输入新发布实例所需的URI;例如, https://localhost:80/dispatcher/invalidate.cache .
      • 输入用于复制的站点特定用户帐户。
      • 您可以根据需要配置其他参数。 对于Dispatcher Flush代理,仅当使用基于路径的虚拟主机条目来区分农场时,才使用URI属性,您使用此字段来定位要失效的农场。 例如,农场#1的虚拟主机为, www.mysite.com/path1/* 而农场#2的虚拟主机为 www.mysite.com/path2/* 。 您可以使用的URL来 /path1/invalidate.cache 定位第一个农场和 /path2/invalidate.cache 第二个农场。
    如果您在建议的默认上下文之外的上下文中安装了AEM,则需要在“扩展”选项卡中配置 HTTP ​头
  6. 单击​ 确定 ​以保存更改。
  7. 返回到工 ,您可以从此处激活调度程序Flush Agent(发布时的 ​代理)。
Dispatcher Flush 复制代理在创作时 ,处于非活动状态。 您可以使用对等的URI在发布环境中访问同一页面;例如, https://localhost:4503/etc/replication/agents.publish/flush.html

控制对复制代理的访问

对用于配置复制代理的页面的访问权限可以通过使用节点上的用户和/或组页面权限来 etc/replication 控制。
设置此类权限不会影响复制内容的用户(例如,从“网站”控制台或Sidekick选项)。 复制框架在复制页面时不使用当前用户的“用户会话”访问复制代理。

从CRXDE Lite配置复制代理

仅存储库位置支持创建复制代 /etc/replication 理。 为了正确处理关联的ACL,需要这样做。 在树的其他位置创建复制代理可能会导致未经授权的访问。
可以使用CRXDE Lite配置复制代理的各种参数。
如果导航到 /etc/replication 以下三个节点:
  • agents.author
  • agents.publish
  • treeactivation
两个保 agents 存有关相应环境的配置信息,并且仅当该环境运行时才处于活动状态。 例如, agents.publish 将仅在发布环境中使用。 以下屏幕截图显示了创作环境中的发布代理,AEM WCM包含该代理:

监视复制代理

要监视复制代理,请执行以下操作:
  1. 访问AEM中 “工具”选项卡。
  2. 单击​ 复制
  3. 双击指向相应环境的代理的链接(左窗格或右窗格);例如,作 者上的代理
    生成的窗口显示了创作环境中所有复制代理的概述,包括其目标和状态。
  4. 单击相应的代理名称(即链接)以显示该代理的详细信息:
    在此对话框中,您可以:
    • 查看代理是否已启用。
    • 查看所有复制的目标。
    • 查看复制队列当前是否处于活动状态(已启用)。
    • 查看队列中是否有任何项目。
    • 刷新或清除 ,更新队列条目的显示;这有助于您查看进入和离开队列的项目。
    • 查看日志 ,以访问复制代理执行的任何操作的日志。
    • 测试与目标实例的连接
    • 如果需要 ,对任何队列项强制重试。
    请勿将“测试连接”链接用于发布实例上的反向复制输出框。
    如果对发件箱队列执行复制测试,则所有早于测试复制的项目都将通过每个反向复制重新处理。
    如果此类项目已存在于队列中,则可以使用以下XPath JCR查询找到它们,并应删除这些项目。
    /jcr:root/var/replication/outbox//*[@cq:repActionType='TEST']

批量复制

批处理复制不会复制单个页面或资产,而是会等待触发这两个页面或资产的第一个阈值(基于时间或大小)。
然后,它将所有复制项打包到一个包中,然后将该包作为一个文件复制到发布者。
出版商将解包所有物品,保存它们并向作者报告。

配置批量复制

  1. 转到 http://serveraddress:serverport/siteadmin
  2. 按屏 幕上方 的“Tools(工具)”图标
  3. 从左侧导航边栏中,转到复制——作 者代理 ,然后双击 默认代理 ​。
    • 您还可以通过直接转到 http://serveraddress:serverport/etc/replication/agents.author/publish.html
  4. 按复 制队列上 方的“编辑”按钮。
  5. 在以下窗口中,转到“批 处理 ”选项卡:
  6. 配置代理。

参数

  • [Enable Batch Mode] -启用或禁用批处理复制模式
  • [Max Wait Time] -在启动批处理请求之前的最长等待时间(以秒为单位)。 默认值是2秒。
  • [Trigger Size] -当此大小限制时启动批量复制

其他资源

有关疑难解答的详细信息,请阅读“复制问 题疑难解答 ”页。
有关其他信息,Adobe提供了一系列与复制相关的知识库文章:
ReplicationSiblingReordering.htmlReplicationFailureAfterNewIP.htmlLimitAccessToReplicationAgents.htmlhttps://helpx.adobe.com/experience-manager/kb/LimitAccessToReplicationAgents.html PagePermissionsNotReplicatedWithUser.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationSiblingReordering.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationFailureAfterNewIP.html https://helpx.adobe.com/experience-manager/kb/PagePermissionsNotReplicatedWithUser.htmlhttps://helpx.adobe.com/experience-manager/kb/HowToUseReverseReplication.html https://helpx.adobe.com/experience-manager/kb/CQ5ReplicateToSpecificAgents.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationListener.html https://helpx.adobe.com/experience-manager/kb/replication-stuck.htmlhttps://helpx.adobe.com/experience-manager/kb/replication-privileges-missing-after-upgrade-to-cq-5-5.htmlhttps://helpx.adobe.com/experience-manager/kb/CQ53UnableToCreateJobQueueDueToMaxQueues.htmlhttps://helpx.adobe.com/experience-manager/kb/ACLReplication.htmlhttps://helpx.adobe.com/experience-manager/kb/content-grow-due-reverse-replication.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationAgentUsingAnonUser.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationSiblingReordering.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationFailureAfterNewIP.htmlhttps://helpx.adobe.com/experience-manager/kb/LimitAccessToReplicationAgents.htmlhttps://helpx.adobe.com/experience-manager/kb/PagePermissionsNotReplicatedWithUser.htmlhttps://helpx.adobe.com/experience-manager/kb/HowToUseReverseReplication.htmlhttps://helpx.adobe.com/experience-manager/kb/CQ5ReplicateToSpecificAgents.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationListener.htmlhttps://helpx.adobe.com/experience-manager/kb/replication-stuck.htmlhttps://helpx.adobe.com/experience-manager/kb/replication-privileges-missing-after-upgrade-to-cq-5-5.htmlhttps://helpx.adobe.com/experience-manager/kb/CQ53UnableToCreateJobQueueDueToMaxQueues.htmlhttps://helpx.adobe.com/experience-manager/kb/ACLReplication.htmlhttps://helpx.adobe.com/experience-manager/kb/content-grow-due-reverse-replication.htmlhttps://helpx.adobe.com/experience-manager/kb/ReplicationAgentUsingAnonUser.html ReplicationListener.htmlreplication-stuck.htmlreplication-privileges-missing-after-upgrade-to-cq-5-5.htmlCQ53UnableToCreateJobQueueDueToMaxQueues.htmlACLReplication.htmlcontent-grow-due-reverse-replication.htmlReplicationAgentUsingAnonUser.html