保护symfony生产环境免受缓存相关错误的方法


Way to securing symfony production env from caching related bugs

好吧,听起来可能有点像巨魔,但事实并非如此。自从我开始使用symfony编程以来,我遇到了非常非常非常奇怪的错误。一个月内像3次。这总是与我的缓存文件有关,每次,我都花了几个小时才最终弄清楚它来自他。

正在做一个密码学项目,当我亲爱的symfony开始忘记使用相同密钥的两个加密之间的密钥时:我开始对我的Web应用程序的未来感到恐惧。(真正的错误是奇怪的,我真的无法解释它)

我将存储敏感数据,我无法想象其中一些东西附加到生产中,我只能说,因为我清除并删除了缓存文件夹,因此该错误消失了。多么信任的行为!

那么,由于大量的文件更新,这些奇怪的错误是否仅与开发环境有关?

您的上下文是什么来告诉您需要在开发环境中清除缓存?

我是否应该停用生产环境的所有类型的缓存以保证不会再次发生?

谢谢你们。

  1. 在决定禁用生产缓存之前,请三思而后行。这可能是一个坏主意。
  2. 在开发中,如果您修改捆绑包,某些配置等,有时Symfony无法刷新缓存,并且为了确保您收到的错误是真实的,您应该删除整个应用程序缓存并清除memcached/redis(如果您使用它)。
  3. 在生产环境中,您可能/应该使用干净的缓存创建具有干净缓存的应用程序新版本的新目录,然后用新版本替换旧版本(通常通过更改符号链接)。这就是为什么如果您的应用程序在具有干净缓存的开发上运行,那么在生产环境中应该没问题。