我正在尝试在symfony2中使用assetic来管理我的CSS.链接生成正常.但是,不会生成任何文件.
这是我的配置:
Layout.html.twig
{% stylesheets
'@FooBundle/Resources/public/css/main.css'
filter='cssrewrite'
%}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
Run Code Online (Sandbox Code Playgroud)
Config.yml
assetic:
debug: %kernel.debug%
use_controller: false
bundles: [ FooBundle ]
filters:
cssrewrite: ~
Run Code Online (Sandbox Code Playgroud)
Config_dev.yml
assetic:
use_controller: true
Run Code Online (Sandbox Code Playgroud)
Assetic生成te链接foo.foo/app_dev.php/css/957d3aa_main_1.css.但是,该文件不存在(或其他任何地方).我尝试过使用权限并查看(nginx)日志,但到目前为止还没有.
非常感谢所有的帮助.
旧问题,请参阅下面的更新版本
我的开发环境不是最快的.每个PHP请求大约需要500毫秒.它开始成为Symfony2资源文件的问题,因为每个资源文件都是通过Symfony的内部控制器请求的:
http://localhost/myproj/app_dev.php/js/bb8690a_part_4_myJavaScriptFile_2.js
可以看出,文件是通过Symfony框架加载的,而不是直接加载的.由于我开始加载超过20个文件,因此将其与500毫秒相乘会使页面加载速度非常慢.我想直接加载文件,但我不知道该怎么做.
这是以下内容的一部分config.yml:
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
# java: /usr/bin/java
filters:
cssrewrite: ~
Run Code Online (Sandbox Code Playgroud)
我想设置use_controller到false会做,但没了.
有没有办法直接处理这些资源的装载?
更新:
这是它现在尝试使用的URL:
http://localhost/myproj/_controller/js/bb8690a_part_4_myJavaScriptFile_2.js
我已use_controller到false了既开发和一般CONFIGS.如何摆脱_controllerURL 的那一部分?
编辑:如果我清除缓存,运行assetic:dump并拥有use_controlleras false,然后重新加载我得到Cannot load resource ".".除非我暂时启用use_controller一个页面加载,否则我无法解决该问题.之后,我禁用它并重新加载,现在它从包含的无效URL请求_controller.
它似乎也在刺激,但不是在dev.奇怪.
模板代码:
{% stylesheets filter="cssrewrite"
'bundles/outotecofil/css/reset.css'
'bundles/outotecofil/css/*'
output='css/dist/dist.css'
%}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% javascripts
'@OutotecCommonBundle/Resources/public/js/jquery-1.6.2.min.js'
'@OutotecCommonBundle/Resources/public/js/jquery-ui-1.8.16.custom.min.js'
'@OutotecCommonBundle/Resources/public/js/chosen.jquery.min.js'
'@OutotecCommonBundle/Resources/public/js/widget/*'
'@OutotecOFILBundle/Resources/public/js/OFILDependencyManager.js'
'@OutotecOFILBundle/Resources/public/js/widget/*' …Run Code Online (Sandbox Code Playgroud)