我正在使用Drupal 7最新的开发版本。
我已经安装了清漆和过期模块并设置了它们。它们运行良好,但我有一个关于从清漆中删除缓存的问题。
问题是如何仅删除索引(主页)页面的清漆缓存,而不删除其他页面的缓存。我查看了他的清漆日志,我发现每次Drupal执行命令时都会删除整个清漆缓存
ban req.http.host ~ www.cdm.me && req.url ~ "/"
此命令由清漆模块或过期模块执行,表示删除主页(索引)页面的缓存。但正如我所看到的,它正在删除清漆中的所有缓存页面。
如何解决这个问题?如何仅删除主页的缓存?
你应该从Drupal调用其他命令:
ban req.http.host ~ www.cdm.me && req.url ~ "^/$"
整个站点的缓存无效,因为正则表达式"/"匹配所有URL
你也可以这样做
ban req.http.host == www.cdm.me && ban req.url == "/"
这个Drupal清除模块会为你做吗? https://drupal.org/project/purge
有 Varnish HTTP Accelerator Integration 模块,它提供了一个非常有用的功能 varnish_purge()。
使用该函数清除清漆缓存。