Symfony2:使用assetic:dump结果将数百个css包含在开发页面中

时间:2015-05-05 16:37:52

标签: symfony assetic

我正在使用symfony2创建一个网站,在我的本地机器上我想尝试测试“生产”模式,所以我正在使用

转储我的css文件
 php app/console assetic:dump

localhost/backend/channel中我现在生成了这个CSS链接

<link rel="stylesheet" href="/css/51c56cc.css"/>
<link rel="stylesheet" href="/css/f2e689f.css"/>
<link rel="stylesheet" href="/css/f639ea7.css"/>

但是现在如果我回到开发模式localhost/app_dev.php/backend/channel,我现在有数百个(确切地说是247个)css请求(在资产之前:在开发模式下转储,我以前只有10个请求)< / p>

我的资产在config_dev.yml

assetic:
   use_controller: true

和config.yml

assetic:
    debug:          %kernel.debug%
    use_controller: false
    bundles:        [MVMSBackendBundle]
    #java: /usr/bin/java
    filters:
        cssrewrite: ~
        #closure:
        #    jar: %kernel.root_dir%/Resources/java/compiler.jar
        #yui_css:
        #    jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar
    assets:
        jquery:
            inputs:
                - 'js/jquery-2.1.3.min.js'
        ie_compat:
            inputs:
                - 'js/ie10-viewport-bug-workaround.js'
        responsive:
            inputs:
                - 'js/bootstrap.min.js'
我做错了什么?这是资产转储的错误吗?我如何“撤消”它?

1 个答案:

答案 0 :(得分:0)

似乎我应该使用

$acceptedTypes = explode(',', $_SERVER['HTTP_ACCEPT']);
if (strstr($acceptedTypes[0], 'text/html') === 0) {
    // Output as HTML page
} else if (strstr($acceptedTypes[0], 'image/') === 0) {
    // Output as image
}

以便它只为prod环境转储

“撤消”dev资产的转储,只需清除缓存并删除转储文件。

我仍然不清楚它为什么会产生那么多CSS链接。