2015-09-27 88 views
0

我的所有CSS,字體,js文件分別位於web/css /,web/fonts /和web/js /中。filter =「cssrewrite」提供了錯誤的路徑

一些CSS文件導入/包括使用相對路徑字體或CSS文件:

@font-face { 
    font-family: 'et-line'; 
    src:url('../fonts/et-line.eot'); 
    src:url('../fonts/et-line.eot?#iefix') format('embedded-opentype'), 
     url('../fonts/et-line.woff') format('woff'), 
     url('../fonts/et-line.ttf') format('truetype'), 
     url('../fonts/et-line.svg#et-line') format('svg'); 
    font-weight: normal; 
    font-style: normal; 
} 

@import url("slider.css"); 
@import url("vertical.css"); 

當然,因爲我使用assetic,我只需添加cssrewrite過濾器在礦井下面的代碼正確包括我的文件:

{% stylesheets filter="cssrewrite" 
    'css/simpletextrotator.css' 
    'css/font-awesome.min.css' 
    'css/et-line-font.css' 
    'css/magnific-popup.css' 
    'css/flexslider.css' 
    'css/animate.css' 
    'css/style.css' 
    'css/custom.css' 
%} 

    <link rel="stylesheet" href="{{ asset_url }}" type="text/css" /> 

{% endstylesheets %} 

我清理在兩種環境下的高速緩存,使用以下命令:

php app/console assetic:dump 
php app/console assetic:dump --env=prod 

在開發環境中一切都很完美,但在產品中,我之前導入的確切文件(使用@ font-face和@import)未包括在內。使用調試器和控制檯,我可以看到:

Firebug's console

Assetic前提是不正確的路徑,Symfony的會在根文件夾中,而它看起來應該在web /文件夾這些文件夾中。

我該怎麼辦?

回答

0

必須通過它才能清除緩存工作在PROD環境中使用這些命令:

php app/console cache:clear --env=prod 
+0

我這樣做,每次我改變什麼。它不起作用。 – user3511871