缓存清除在生产环境中不起作用

时间:2019-03-08 17:36:14

标签: laravel-5 caching amazon-cloudfront amazon-elb laravel-mix

我正在尝试解决一个缓存问题,确实让我挠头。

我们有一个内置于Docker的Laravel应用,该应用已部署到Staging and Production。

  • 资产是使用使用Webpack的Laravel Mix构建的。我们所有人 文件已版本化。

  • 暂存处于调试模式,而生产暂不处于调试模式。

  • 分段是负载均衡器后面的单个实例,生产是 负载均衡器后面有两个实例。

  • 两者都使用相同的Nginx配置

  • 两个站点都使用Cloud Front,并且具有相同的缓存行为。 Origin Cache标头不转发cookie,白名单使用ID查询字符串

当我们部署到暂存时,一切都会按预期进行。

当我们部署到生产环境时,CSS和Javascript会与以前的版本一起缓存。

我检查了资产散列,它们是相同的,都受到了来自云端的打击。

当我下载CSS文件并进行差异化生产以表明它们不相同时。

真正让我感到困惑的是,当我在生产环境中更改缓存键时,我可以看到从云前端错过的机会,而从云前端获得重新加载的机会。下载和差异分期以及制作,它们现在是相同的。

我不知道发生了什么或在哪里看,任何想法将不胜感激!

0 个答案:

没有答案