我有资产问题的长期问题:转储。我想使用“assetic”来从不同的包中获取Javascript和CSS文件(我写过)并将它们收集到模板中的dev和prod环境中。每次我想转储新文件时,assetic:dump命令都会尝试写一个完整的破解路径。
app/console assetic:dump
[RuntimeException]
Unable to create directory /var/www/app/../web//var/www/app/../htdocs/css
我也尝试写作:(无效)
app/console assetic:dump web
app/console assetic:dump .
app/console assetic:dump /var/www/web
我配置了像这样的资产:
assetic:
debug: %kernel.debug%
use_controller: false
read_from: "%kernel.root_dir%/../web"
write_to: "%kernel.root_dir%/../web"
bundles:
- MyCodeBundle
- NextCodeBundle
#java: /usr/bin/java
filters:
lessphp:
file: %kernel.root_dir%/../vendor/oyejorge/less.php/lessc.inc.php
apply_to: "\.less$"
cssrewrite: ~
我还使用 BraincraftedBootstrapBundle 在我的模板中使用Twitter Bootstrap Js / CSS。
我可以在哪里修复资产的路径:转储?
答案 0 :(得分:0)
正如评论中所讨论的,从web
到htdocs
的符号链接似乎存在问题。不知道它是否是Symfony / Assetic或您本地安装中的错误。
但是,你甚至不需要那个符号链接。如果您需要将文档根命名为htdocs
,则可以告诉Symfony使用该目录:
在应用程序的composer.json
中,应该有一个条目"symfony-web-dir": "web"
。将值更改为htdocs
,您应该没问题。您还应该将符号链接从web
移除到htdocs
,以避免混淆。
我还没有对此进行过测试,但我希望所有Symfony发行包(包括Assetic)都能够尊重这一设置。如果Assetic没有,只需使用htdocs
作为目标参数调用Assetic。
并且,您应该从配置中删除read_from
和write_to
参数。无论如何,您的值都是默认值,因此无需对其进行硬编码。
希望这有帮助。