【发布时间】:2013-02-19 17:53:54
【问题描述】:
我对 symfony 2 有一个奇怪的问题。我正在开发一个项目,该项目的所有样式表和 javascript 文件都加载了资产(路径/到/文件),我决定将资产与 cssrewrite 和 yui_compressor 一起使用,所以我添加了他们是这样的:
// this is just one file for example
{% stylesheets
'bundles/mybundle/css/main.css'
filter='?cssrewrite, ?yui_css'
%}
现在一切都在 prod 环境中完美运行,但问题出在开发环境中。文件链接正确,我可以打开文件,但资源类型实际上是 text/html 而不是 text/css,即使类型设置为 text/css,如下所示:
<link rel="stylesheet" type="text/css" href="/app_dev.php/css/ab72c13_main_1.css"/>
什么会导致这个奇怪的问题?
【问题讨论】:
-
“资源类型实际上是 text/html 而不是 text/css”是什么意思。你从哪里得到这些信息?另外,请注意,在过滤器前面使用
?会告诉 Assetic 不要处理它们,因此这不太可能是 Assetic 问题 (symfony.com/doc/current/cookbook/assetic/…)。 -
我知道,但在我使用资产之前,这个问题并不存在,所以我认为它是资产。我注意到css文件根本没有应用,所以我检查了chrome的调试工具栏(或任何被调用的东西),我看到资源的类型是text/html
-
好的,这很有道理。你能告诉我们你的树枝模板中完整的
{% stylesheets %}吗? -
只是这个和另一个文件,因为我想一个一个地添加它们......两个文件的行为相同
-
如果你让
cssrewrite过滤掉它前面的?甚至在 dev 中呢?