5

我正在使用 Drupal 7 最新的开发版本。

我已经安装了 Varnish 和 Expire 模块并进行了设置。他们工作得很好,但我有一个关于从清漆中删除缓存的问题。

问题是如何仅删除索引(主页)页面的清漆缓存而不删除其他页面的缓存。我查看了他的清漆日志,发现每次 Drupal 执行命令时都会删除整个清漆缓存

 ban req.http.host ~ www.cdm.me && req.url ~ "/"

该命令由 varnish 模块或 expire 模块执行,表示删除主页(索引)页面的缓存。但正如我所见,它正在删除清漆中的所有缓存页面。

如何解决这个问题?如何仅删除主页的缓存?

4

4 回答 4

14

您应该从 Drupal 调用其他命令:

ban req.http.host ~ www.cdm.me && req.url ~ "^/$"

整个站点的缓存无效,因为正则表达式“/”匹配所有 URL

于 2012-11-26T00:23:40.090 回答
0

这个 Drupal Purge 模块会为你做吗?https://drupal.org/project/purge

于 2013-12-10T12:58:07.103 回答
0

你也可以做

ban req.http.host == www.cdm.me && ban req.url == "/"
于 2013-11-08T21:57:19.123 回答
0

Varnish HTTP Accelerator Integration模块,它提供了一个非常有用的函数 varnish_purge()。

使用该功能清除清漆缓存。

于 2016-02-16T13:09:07.267 回答