【问题标题】:Silverstripe cache flush does not persistSilverstripe 缓存刷新不会持续存在
【发布时间】:2018-06-01 11:05:35
【问题描述】:

第一次使用 SilverStripe(3.6 版)时,在本地开发环境(Mac OSX、PHP7.1、Apache2.4)中的网站上工作时,我真的很难处理缓存问题。

查看网站页面时,我可以将?flush 或?flush=all 添加到URL 并刷新缓存。通过这样做,我可以看到我对模板或 CSS 所做的更改。这是一个小问题,但可以管理。

但是,如果我删除刷新查询参数,页面会恢复到以前的版本。

我希望刷新操作能够清除所有缓存并允许我查看页面的最新版本,而不必总是使用 ?flush 参数。

我有一个可写的/silverstripe-cache 目录,我可以看到其中生成的文件。

我做错了什么?尽管我使用了刷新,为什么 Silverstripe 会缓存一些旧版本的页面?

谢谢!

【问题讨论】:

    标签: silverstripe


    【解决方案1】:

    所以我认为这个问题的答案在/cache 目录中(我刚刚发现)。

    rm -rf cache/*
    

    删除缓存目录中的所有文件,似乎解决了我缓存 HTML 和 CSS 的问题,这意味着我不需要在每个请求中添加 ?flush。

    缓存文件夹在后续页面加载时保持为空,可能是因为 SilverStripe 站点正在SS_ENVIRONMENT_TYPE=dev 模式下运行。我假设当它上线时 (SS_ENVIRONMENT_TYPE=live) 将使用缓存文件夹。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-15
      • 1970-01-01
      • 1970-01-01
      • 2016-08-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多