在AEM as a Cloud Service中修复客户端域路由问题

当调度程序场配置错误时,Adobe Experience Manager as a Cloud Service (AEMaaCS)中的客户端域路由失败,导致请求默认为错误的场。 要解决此问题,请验证Dispatcher设置,更新虚拟主机别名,重命名场文件以修复排序,查看客户端标头,并验证CDN设置以正确进行域映射。

描述 description

环境

Adobe Experience Manager as a Cloud Service (AEMaaCS) — 站点和生产环境,使用Akamai CDN和域证书以及多个自定义域。

问题/症状

  • Dispatcher日志显示警告,例如: 没有场与主机“localhost”匹配,选择的最后一个场“publishfarm”
  • Dispatcher配置似乎可以按反字母顺序优先处理已启用的场。
  • enabled_vhostsenabled_farms目录中的文件缺少符号链接。
  • 虚拟主机配置中不存在某些必需的服务器别名,如localhost127.0.0.1

解决方法 resolution

要解决此问题,请执行以下步骤:

  1. 验证Dispatcher配置:

    • 在本地使用Dispatcher验证工具来识别当前配置中的任何错误或警告。
    • 确保enabled_vhostsenabled_farms目录中的所有文件都是符号链接。
  2. 更新虚拟主机配置: 确认虚拟主机条目包括所有必要的服务器别名: ServerAlias "*example.com" "*.local" "localhost" "127.0.0.1" "*.adobeaemcloud.net" "*.adobeaemcloud.com"

  3. 重命名已启用的场: 从已启用的场文件名中删除数字前缀(例如00_01_),因为这样可能会导致在场选择期间出现按字母顺序相反排序的问题。

  4. 启用调试日志记录: 将Dispatcher日志设置为调试模式,并捕获与场选择或错误发生次数相关的日志片段,以供进一步分析。

  5. 检查客户端标头规则: 检查硬编码占位符值(如clientheaders.any)的客户端标头规则(例如default_clientheaders.any'localhost')。 将它们替换为传入请求的相应映射。

  6. 在本地测试更改: 在将更改应用于生产之前,在本地Dispatcher实例上部署更新的配置并验证功能。

  7. 部署更新的配置: 验证后,使用管道工具部署更新的Dispatcher配置。

  8. 验证CDN设置:

    • 确保CDN正确配置为使用客户域名。
    • 验证X-Forwarded-Host标头是否设置正确,是否不包含占位符值(如'localhost')。
  9. 重新测试域路由: 部署后,测试每个自定义域,确认请求已正确路由到其各自的场。

  10. 部署后监视日志: 部署后继续监视Dispatcher日志,以识别任何异常或重复出现的问题。

相关读数

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