Symfony - Bootstrap glyphicons - 资产转储将url(在css中)重写为错误的路径(将“../”添加到路径,这不应该发生)

时间:2016-05-27 17:33:27

标签: twitter-bootstrap symfony assetic

我的目标是在我的Symfony(2.8)Web应用程序中使用Bootstrap Glyphicons字体。我正在使用资产,但它存在我的问题。我在我的composer.json文件中添加了bootstrap(“twitter / bootstrap”:“3.3。”)。运行composer install后,我检查了原始bootstrap.css文件(vendor文件夹)中的路径,字体的url如下所示(当然可以,因为字体可以在那里找到):“src :url('../ fonts / glyphicons-halflings-regular.eot');“

但是,在运行assetic:dump 后检查web / css文件夹中的结果时,我发现路径错误地更改为“ src:url(' ../的 ../字体/ glyphicons-半身-regular.eot');” (注意添加的“ ../

我的config.yml文件中的资产部分如下所示:

assetic:
debug:          "%kernel.debug%"
use_controller: false
bundles:        [ 'AppBundle' ]
filters:
    cssrewrite: ~
assets:
    bootstrap_js_and_jquery:
        inputs:
            - '%kernel.root_dir%/../vendor/components/jquery/jquery.js'
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/dist/js/bootstrap.js'
    bootstrap_css:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/dist/css/bootstrap.css'
    bootstrap_glyphicons_ttf:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf'
        output: "fonts/glyphicons-halflings-regular.ttf"
    bootstrap_glyphicons_eot:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/fonts/glyphicons-halflings-regular.eot'
        output: "fonts/glyphicons-halflings-regular.eot"
    bootstrap_glyphicons_svg:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/fonts/glyphicons-halflings-regular.svg'
        output: "fonts/glyphicons-halflings-regular.svg"
    bootstrap_glyphicons_woff:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/fonts/glyphicons-halflings-regular.woff'
        output: "fonts/glyphicons-halflings-regular.woff"
    bootstrap_glyphicons_woff2:
        inputs:
            - '%kernel.root_dir%/../vendor/twbs/bootstrap/fonts/glyphicons-halflings-regular.woff2'
        output: "fonts/glyphicons-halflings-regular.woff2"

这样做的结果是可以在'web / css'中找到css文件,在'web / fonts'中找到字体(所以这一切看起来很好)。

在我的twig模板中,我应用了cssrewrite规则:

{% stylesheets '@bootstrap_css' filter='cssrewrite'%}
        <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}

任何人都可以解释为什么css文件中的路径是通过在路径前添加“../”来重写的,这使得无法找到字体(404)?有没有人设法让这个工作在类似的设置?

提前致谢。

0 个答案:

没有答案