Silverstripe 缓存刷新不会持续
Silverstripe cache flush does not persist
第一次使用 SilverStripe(版本 3.6),在本地开发环境中处理网站时,我真的很难处理缓存问题(Mac OSX、PHP7 .1, Apache2.4).
在网站上查看页面时,我可以将 ?flush
或 ?flush=all
添加到 URL 并刷新缓存。通过这样做,我可以看到我对模板所做的更改或 CSS。这是一个 faff,但可以管理。
但是,如果我删除 flush 查询参数,页面将恢复到某个以前的版本。
我希望刷新操作能够清除所有缓存并让我看到页面的最新版本,而不必总是使用 ?flush
参数。
我有一个可写的/silverstripe-cache
目录,我可以看到其中生成的文件。
我做错了什么?为什么 Silverstripe 缓存了一些旧版本的页面,尽管我使用了 flush?
谢谢!
所以我认为答案在 /cache
目录(我刚刚发现)中。
rm -rf cache/*
删除缓存目录中的所有文件,似乎解决了缓存 HTML 和 CSS 的问题,意味着我不需要在每个请求中添加 ?flush
.
缓存文件夹在随后的页面加载中保持为空,可能是因为 SilverStripe 网站处于 运行 模式 SS_ENVIRONMENT_TYPE=dev
。我假设当它处于活动状态时 (SS_ENVIRONMENT_TYPE=live
) 然后将使用缓存文件夹。
第一次使用 SilverStripe(版本 3.6),在本地开发环境中处理网站时,我真的很难处理缓存问题(Mac OSX、PHP7 .1, Apache2.4).
在网站上查看页面时,我可以将 ?flush
或 ?flush=all
添加到 URL 并刷新缓存。通过这样做,我可以看到我对模板所做的更改或 CSS。这是一个 faff,但可以管理。
但是,如果我删除 flush 查询参数,页面将恢复到某个以前的版本。
我希望刷新操作能够清除所有缓存并让我看到页面的最新版本,而不必总是使用 ?flush
参数。
我有一个可写的/silverstripe-cache
目录,我可以看到其中生成的文件。
我做错了什么?为什么 Silverstripe 缓存了一些旧版本的页面,尽管我使用了 flush?
谢谢!
所以我认为答案在 /cache
目录(我刚刚发现)中。
rm -rf cache/*
删除缓存目录中的所有文件,似乎解决了缓存 HTML 和 CSS 的问题,意味着我不需要在每个请求中添加 ?flush
.
缓存文件夹在随后的页面加载中保持为空,可能是因为 SilverStripe 网站处于 运行 模式 SS_ENVIRONMENT_TYPE=dev
。我假设当它处于活动状态时 (SS_ENVIRONMENT_TYPE=live
) 然后将使用缓存文件夹。