迁移到AEMaaCS后,内部部署Sling映射失败

由于云环境不可变的性质,将Sling映射从内部部署AEM设置迁移到Adobe Experience Manager as a Cloud Service (AEMaaCS)会引入兼容性问题。 要解决此问题,请使用受支持的云兼容格式重构和部署sling映射。

描述 description

环境

Adobe Experience Manager as a Cloud Service (AEMaaCS) — 站点

问题/症状

  • 多个路径和域的映射无法生成正确的URL。
  • /etc/map下的正向映射和反向映射在AEMaaCS中不起作用。
  • 传出URL显示不正确,但重定向到正确的目标。
  • 传入URL的行为正确,但传出行为不一致。
  • 由于AEMaaCS的不可变性,AEMaaCS要求通过代码部署Sling映射。

解决方法 resolution

按照以下步骤转换和部署与AEMaaCS兼容的sling映射:

  1. 将本地/etc/map目录中的现有sling映射导出到.zip包中。

  2. 将导出的.zip包添加到your_project/ui.content/src/main/content/jcr_root/下的项目代码库。

  3. etc目录中的映射文件夹重命名为map.publish

  4. 更新Apache Sling资源解析程序配置以引用/etc/map.publish作为映射位置。

    1. 为PID org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl创建或更新OSGi配置JSON。
    2. resource.resolver.map.location设置为/etc/map.publish
    3. 如果要从JCR迁移映射逻辑,可以选择使用任何自定义数组值更新resource.resolver.mapping
  5. 保存所有更改,并使用Adobe Cloud Manager部署更新的代码库以将更改推送到AEMaaCS。

  6. 在部署到生产环境之前,在开发和暂存环境中彻底测试映射,以确保传入和传出URL均正常运行。

相关阅读

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f