【问题标题】:symfony disable cache bustingsymfony 禁用缓存破坏
【发布时间】:2013-10-30 22:16:53
【问题描述】:

Symfony2 (v2.4) 阻止使用 chrome 和 CoffeeScript 源映射中的新“工作区”功能进行调试,因为它默认启用缓存清除。

{% javascripts    
'bundles/js/scriptA.js'
'bundles/js/scriptB.js'
 %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

这将输出:

<script type="text/javascript" src="/bundles/js/abcde_script_1"></script>

阅读文档,他们实际上解释说我们无法将缓存清除配置为默认情况下执行的操作...令人费解! (参见Symfony2 documentation)

总之想有结果:

<script type="text/javascript" src="/bundles/js/scriptA.js"></script>
<script type="text/javascript" src="/bundles/js/scriptB.js"></script>

这个问题出现在开发环境中

RewriteRule (.+) /app_dev.php/$1

【问题讨论】:

  • 你有什么问题?
  • @n.1,希望我已经澄清了这一点。
  • 您在dev 或prod 环境中有这个问题吗?
  • @n.1 在dev 之一。 (再次更新问题)

标签: symfony caching toggle


【解决方案1】:

您可以通过添加debug=false 来覆盖负责在{% javascripts %} 或{% stylesheets %} 标记中生成后缀资产的调试设置。

{% javascripts    
    'bundles/js/scriptA.js'
    'bundles/js/scriptB.js'
    debug=false
 %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

之后清除缓存。

【讨论】:

  • 我不能接受你的回答,因为她不符合要求。它确实禁用了调试,从而生成 一个 大文件,而不是文档所述的多个文件。如果你是对的,我进行了测试,但它确实按照文档所说的那样进行。
猜你喜欢
  • 2013-07-14
  • 1970-01-01
  • 2012-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-19
  • 1970-01-01
  • 2015-10-02
相关资源
最近更新 更多