我在 Symfony2 下有一个使用 LessPHP 的网站。在开发环境中一切正常。当我点击http://mylocalsite/app_dev.php/
浏览器到达http://mylocalsite/app_dev.php/css/XXXX_myFile_1.css
.
但是当我点击http://mylocalsite/
浏览器尝试访问http://mylocalsite/css/XXXX_myFile_1.css
并收到 404 错误。
prod.log 仅包含此内容
[2014-01-24 12:08:46] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "No route found for "GET /css/XXXX_myFile_1.css"" at /the/path
config.yml
# Assetic Configuration
assetic:
debug: "%kernel.debug%"
use_controller: false
bundles: [ ]
#java: /usr/bin/java
filters:
cssrewrite: ~
lessphp:
apply_to: "\.less$"
file: %kernel.root_dir%/../vendor/leafo/lessphp/lessc.inc.php
# Formatter options: compressed, lessjs, classic
formatter: "compressed"
preserve_comments: false
树枝模板
{% stylesheets '@ProjectMyBundle/Resources/less/myFile.less' %}
<link rel="stylesheet" href="{{ asset_url }}">
{% endstylesheets %}
编辑
我做了php app/console assetic:dump --env=prod --no-debug
这给了我一个web/css/XXXX.css
文件。但浏览器仍在寻找一个名为XXXX_myFile_1.css
.
我试图这样设置输出
{% stylesheets output='css/myFile.css'
'@ProjectMyBundle/Resources/less/myFile.less' %}
<link rel="stylesheet" href="{{ asset_url }}">
{% endstylesheets %}
再次执行php app/console assetic:dump --env=prod --no-debug
,这给了我一个web/css/myFile.css
文件。但现在浏览器正在寻找一个名为myFile_myFile_1.css
.
回答
use_controller
必须在 config.yml 文件中设置为true 。
谢谢