我希望了解AEM调度程序配置的一部分。这将在/ cache / rules部分
下看起来像是
/rules
{
# initial blanket deny
/0000
{
/glob "*"
/type "deny"
}
/0100
{
/glob "*.html"
/type "deny"
}
}
规则100是否意味着调度程序没有缓存任何html页面?
答案 0 :(得分:2)
是的,规则
/0100
{
/glob "*.html"
/type "deny"
}
表示不会缓存.html
扩展名的文件。有关详细信息,请参阅documenatation。
我不确定在Publish实例上会实现什么。如果所有HTML页面都是使用与静态部分内联的用户特定数据呈现的(例如,在负责显示整个页面的JSP / HTL脚本中呈现的用户数据),那么唯一看起来很合适的情况就是如此。不缓存HTML页面会给您的Publisher场带来巨大压力。如果避免缓存动态数据是此配置的原因,则有更好的方法来处理从AEM提供用户特定数据,每个数据都需要更改应用程序和部署体系结构(AJAX调用,{ {3}},Server Side Includes,Sling Dynamic Inlcudes,Edge Side Includes,仅举几例。)
正如另一个答案所指出的,当在作者环境面前设置调度程序时,这可能是一个有效的规则。
答案 1 :(得分:2)
从您的问题中为规则添加其他答案和解释:
/0100
{
/glob "*.html"
/type "deny"
}
是(正如其他答案中所指出的),这意味着.html不会被缓存。这可能听起来很奇怪,但如本documentation所述,在AEM作者服务器前配置调度程序并不常见。
AEM作者的html页面几乎是特定于会话的,因此缓存它们会导致很多问题。
如果您想知道,如果您正在缓存AEM库和静态/非用户特定内容,那么AEM作者面前的调度员真的很有效。
答案 2 :(得分:0)
这是一个简单的解释:
/rules
{
# initial blanket deny
/0000
{
/glob "*"
/type "deny"
}
/0100
{
/glob "*.html"
/type "deny"
}
}
/ 0000 - 规则不允许任何缓存。
如果您想要缓存某些内容,请按照以下提及allow
:
/rules
/0100
{
/glob "*.html"
/type "allow"
}