组合文件未包含在生产中

The combined file is not being included in production

我正在使用 uglifyjsuglifycss 以及 symfony 来管理我的资产。 我有一个奇怪的问题。 这是我的配置

# Assetic Configuration
assetic:
     debug:          "%kernel.debug%"
     use_controller: false
     bundles:        [ ]
     filters:
        cssrewrite: ~
        uglifyjs2:
                # the path to the uglifyjs executable
                bin: "%kernel.root_dir%/Resources/node_modules/uglify-js/bin/uglifyjs"
        uglifycss:
                bin: "%kernel.root_dir%/Resources/node_modules/uglifycss/uglifycss"

在我看来

{% javascripts
        '@MyBundle/Resources/public/js/global.js'
        '@MyBundle/Resources/public/utilis/*.js'
        '@MyBundle/Resources/public/utilis/*/*.js'
        '@MyBundle/Resources/public/js/*.js'
        '@MyBundle/Resources/public/js/*/*.js'
        filter='?uglifyjs2' %}

        <script src="{{ asset_url }}"></script>

 {% endjavascripts %}

有了这个,我希望我的页面中只包含一个缩小的文件。 在我的开发机器上(Windows 7、php 5.4、symfony 2.7)一切正常。 但是在生产环境中(debian 7、php5.4、symfony 2.7),所有单独的文件都包含在页面中。

<script src="/js/e434957_part_14_Store_1.js"></script>
<script src="/js/e434957_part_15_CrudPanel_2.js"></script>
<script src="/js/e434957_part_15_Form_3.js"></script>
<script src="/js/e434957_part_15_Grid_4.js"></script>

有人可以帮助我了解发生了什么吗?

转储资产时,确保将 --env=prod 添加到 assetic:dump 命令。

您还可以强制文件与 combine=true 参数结合。但它应该在生产环境中自动设置为真。