首页 文章

Symfony2资产指南针prod和dev环境中的diffrent asset_url路径

提问于
浏览
0

我尝试在Ubuntu 12.04上使用指南针和Assetic配置我的Symfony2项目(放弃在Windows XP上使用指南针和Assetic运行此项目) .

我配置罗盘,当我在开发环境中启动我的项目时它工作正常,虽然在prod我有错误的asset_url路径到我的CSS输出文件从罗盘过滤器 .

这是我的config.yml资产部分:

# Assetic Configuration
assetic:
debug:          %kernel.debug%
use_controller: false
#bundles:        [ ]
#java: /usr/bin/java
filters:
    cssrewrite: ~
    sass: 
      bin: /usr/local/bin/sass
      apply_to: "\.scss$"
      #bin: C:/Ruby200/bin/sass this is for Windows not working though
    compass: 
        images_dir: %kernel.root_dir%/../web/images
        http_path:  /images
        #bin: C:/Ruby200/bin/compass.bat this is for Windows not working though
        bin: /usr/local/bin/compass
    closure:
        jar: %kernel.root_dir%/Resources/java/compiler.jar
    yui_css:
        jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar

我在 app/Resources/views/base.html.twig 中包含资产过滤器

{% stylesheets filter="compass" "@PortalSlubnyMainBundle/Resources/public/css/settings.scss"%}
 <link rel="stylesheet" href="{{ asset_url }}" />
 {% endstylesheets %}
 <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />

当我通过app_dev.php运行我的项目时,我得到了正确格式化的asset_url

看起来像这样: /app_dev.php/css/6262784_settings_1.css

在prod环境中我得到了错误的网址: /css/6262784.css (404未找到错误)

我清除了prod和dev的缓存,没有任何改变 .

1 回答

  • 1

    在开发环境中资产使用默认控制器 . 所以你的产品和开发环境的网址都很好 .

    要生成资产文件,您需要运行 app/console assetic:dump ,这些文件将在prod环境中使用 .

相关问题