【问题标题】:Varnish cache - How to purge/delete cache only for Home page清漆缓存 - 如何仅为主页清除/删除缓存
【发布时间】:2012-11-12 18:15:58
【问题描述】:

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

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

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

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

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

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

【问题讨论】:

    标签: drupal caching drupal-7 varnish varnish-vcl


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

      你也可以

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

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

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

          使用该函数清除清漆缓存。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2023-03-25
            • 2022-11-28
            • 2016-12-17
            • 2018-04-07
            • 1970-01-01
            • 2013-01-09
            • 2012-08-07
            • 1970-01-01
            相关资源
            最近更新 更多