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