部署 symfony2 后清除用户的浏览器缓存
Clear users' browser cache upon deploy symfony2
我的 symfony2 应用程序的用户缓存有问题:每次我向应用程序部署更新时,用户都必须清除浏览器缓存才能获得新样式和 javascript。
在我使用 AWS ECS 集群运行使用我的 docker 图像设置 2 个服务器后,它开始发生。我有一个 Caddy 反向代理来平衡这两个服务器。
我不明白问题出在哪里,是Caddy缓存了请求,是Twig还是你有什么想法?
显然我在部署时 运行 php bin/console cache:clear --env=prod
。
既然我们在谈论浏览器缓存(css,js 文件),您应该看看 Symfony 资产版本控制。
http://symfony.com/blog/new-in-symfony-2-7-the-new-asset-component
在您 config/parameters 中,您可以指定资产的版本。
如果你想自动执行此操作,你可以将资产版本与你连接 git 提交,如下所示,但你的应用程序应该能够 运行 exec()
命令在你的服务器。
http://blog.lavoie.sl/2012/10/automatic-cache-busting-using-git-in-symfony2.html
我的 symfony2 应用程序的用户缓存有问题:每次我向应用程序部署更新时,用户都必须清除浏览器缓存才能获得新样式和 javascript。
在我使用 AWS ECS 集群运行使用我的 docker 图像设置 2 个服务器后,它开始发生。我有一个 Caddy 反向代理来平衡这两个服务器。
我不明白问题出在哪里,是Caddy缓存了请求,是Twig还是你有什么想法?
显然我在部署时 运行 php bin/console cache:clear --env=prod
。
既然我们在谈论浏览器缓存(css,js 文件),您应该看看 Symfony 资产版本控制。
http://symfony.com/blog/new-in-symfony-2-7-the-new-asset-component
在您 config/parameters 中,您可以指定资产的版本。
如果你想自动执行此操作,你可以将资产版本与你连接 git 提交,如下所示,但你的应用程序应该能够 运行 exec()
命令在你的服务器。
http://blog.lavoie.sl/2012/10/automatic-cache-busting-using-git-in-symfony2.html