我的Symfony2配置不是使用Assetic资产管理(重新)从SCSS处理CSS文件
当我使用“php app / console assets:install”在CLI中转储我的资产时,所有文件都存在,但在我的开发环境中没有任何反应,当我的浏览器尝试查找CSS文件时会出现500错误。怎么了?
当然,所有东西都安装在我的流浪汉机器上(包括红宝石和宝石)
# Assetic Configuration
assetic:
debug: "%kernel.debug%"
use_controller: false
bundles:
- MyBundle
- BraincraftedBootstrapBundle
assets:
my:
inputs:
- %kernel.root_dir%/../src/MyBundle/Resources/assets/scss/mytest.scss
output: %kernel.root_dir%/../web/css/all.css
#java: /usr/bin/java
filters:
#cssrewrite: ~
scss:
bin: /usr/local/rvm/gems/ruby-1.9.3-p551/bin/sass
apply_to: "\.scss$"
编辑:它可能与logs / dev.log
中的此错误有关[2015-03-02 14:22:22] request.CRITICAL: Uncaught PHP Exception Assetic\Exception\FilterException:
Error Output: Errno::ETXTBSY: Text file busy
编辑2:它可能与vagrant文件夹同步有关。我在使用puphpet配置排除的文件夹时遇到了问题。
答案 0 :(得分:0)
虽然您的日志文件看起来可能存在Assetic的一些配置问题(您可能需要弄清楚),但我认为转储Assetic资产的正确命令是assetic:dump
,而不是assets:install
{1}}(只是从bundle目录中复制/符号链接静态资产)。
答案 1 :(得分:0)
我的最终解决方案问题是通过修改app / AppKernel.php将vagrant机器中的缓存目录移动到/ tmp目录中
只需添加这些代码就足够了:
public function getCacheDir()
{
return '/tmp/myapp/cache/' . $this->environment;
}
它只是将缓存目录移到同步的vagrant目录之外。