首次使用SilverStripe(版本3.6)时,我在本地开发环境(Mac OSX,PHP7.1,Apache2.4)上的网站上工作时遇到了很大的困难。
在网站上查看网页时,我可以将?flush
或?flush=all
添加到网址并刷新缓存。通过这样做,我可以看到我对模板或CSS所做的更改。这是一个很好的,但可以管理。
但是,如果我删除了刷新查询参数,该页面将恢复为某个先前版本。
我希望flush操作能够清除所有缓存,并允许我查看页面的最新版本,而不必始终拥有?flush
param。
我有一个可写的/silverstripe-cache
目录,我可以看到其中生成的文件。
我做错了什么?为什么Silverstripe会缓存一些旧版本的页面,尽管我使用了flush?
谢谢!
答案 0 :(得分:0)
所以我认为答案就在/cache
目录中(我刚刚发现)。
rm -rf cache/*
删除缓存目录中的所有文件,似乎解决了我的缓存HTML和CSS问题,这意味着我不需要为每个请求添加?flush
。
缓存文件夹在后续页面加载时保持为空,可能是因为SilverStripe站点以SS_ENVIRONMENT_TYPE=dev
模式运行。我假设它何时有效(SS_ENVIRONMENT_TYPE=live
),那么将使用缓存文件夹。