aem - AEM 配置
问题描述
配置根据运行模式应用于 AEM 实例。在多个运行模式和多个配置的情况下,AEM 如何确定要选择的配置文件?
假设以下配置在 AEM 项目中可用,
/apps
/myproject
- config
- config.prod
- config.author
- config.active
- config.prod.active
- config.prod.author.active
哪个配置被选择或应用于使用运行模式author,nosamplecontent,prod,active创建的 AEM 实例?
是否有任何与配置创建相关的已定义规则(或最佳实践)记录在案,我可以在设置项目时参考
谢谢,
杰
解决方案
多种运行模式的分辨率
对于特定于运行模式的配置,可以组合多种运行模式。例如,您可以按以下样式创建配置文件夹:
/apps/*/config../
如果所有运行模式都与启动时定义的运行模式匹配,则将应用此类文件夹中的配置。
例如,如果一个实例以运行模式 author,dev,emea 启动,配置节点位于 /apps/ /config.emea、/apps/ /config.author.dev/ 和 /apps/ /config.author.emea。 dev/ 将被应用,而 /apps/ /config.author.asean/ 和 /config/author.dev.emea.noldap/ 中的配置节点将不会被应用。
如果同一 PID 的多个配置适用,则应用匹配运行模式数量最多的配置。
例如,如果实例以运行模式 author、dev、emea 启动,并且 /apps/ /config.author/ 和 /apps/ /config.emea.author/ 都为 com.day.cq.wcm 定义配置.core.impl.VersionManagerImpl,将应用/apps/*/config.emea.author/中的配置。
此规则的粒度处于 PID 级别。您不能在 /apps/ /config.author/ 中为相同的 PID 定义某些属性,在 /apps/ /config.emea.author/ 中为相同的 PID 定义更具体的属性。匹配运行模式数量最多的配置将对整个 PID 有效。
以下是一些最佳实践:
推荐阅读
- visual-studio-code - 脚本在 jupyter notebook 中运行,但不在 vscode 中
- database - 如何在 Postgres 中将所有没有模式的数据从一个数据库复制到另一个数据库?
- storage - Azure 逻辑应用中的存储方法
- dynamics-crm - 电子邮件实体上的 Dynamics CRM 安全角色权限
- amazon-web-services - 在 64 位 Amazon Linux 2/3.1.2 平台上运行的 Elastic Beanstalk Ruby 2.6 更新错误:工作人员提前终止
- javascript - Javascript - 如何在第一列中写入每个 % 2 === 0 否则为 2cnd 列
- python - 如何将删除请求重定向到 django rest 框架中的特定 url?
- spring-boot - ibm mq 消费者的连续连接重试尝试导致一段时间后内存泄漏导致 jvm 崩溃。如何解决这个问题?
- ios - Unable to simultaneously satisfy constraints. Probably at least one of the constraints
- android - 如何避免 listview android 应用程序崩溃