1

将我的 symfony2 应用程序投入生产后,我的主页和与前端部分相关的链接工作正常(domain.com/event/xxxx、domain.com/category/yyy 等)。CSS & JS 已正确加载。但是,可以通过 domain.com/admin 访问的我的管理部分不是。当我检查生成的 html 时,我发现我的 CSS 和 JS 文件名是空的。

我得到类似的东西

<link rel="stylesheet" href="/css/.css"> 
<script src="/js/.js"></script>

我已清除缓存并转储资产:

./console cache:clear --env=prod --no-debug
./console assetic:dump --env=prod --no-debug

但什么也没发生,问题仍然存在。

顺便说一句,清除 prod 缓存会显示奇怪的行,这些行没有显示我清除了 dev 缓存,我得到了一些这样的输出:

Clearing the cache for the prod environment with debug false Mac OS X           2??ATTR?????j?
                                  com.apple.TextEncoding?_de.codingmonkeys.seestatemacintosh;0d1:pd1:yi85e1:wi1572e1:xi32e1:hi922ee1:sd1:pi1245e1:li0ee1:ei1e1:li1919e1:m16:SEEMode.PHP-HTMLeThis resource fork intentionally left blank   ??Mac O

如果您需要查看我的配置文件,只需告诉我您需要哪些文件,我会粘贴它们。

请问有什么帮助吗?

编辑

好的,我不知道这是否正确,但我发现这个Assetic 没有创建组合链接

并在更改 $kernel = new AppKernel('prod', false);

通过(与该链接中描述的相反),它正在工作。$kernel = new AppKernel('prod', true);

我能保持这样吗?

4

1 回答 1

0

我已经解决了这个问题

app/console cache:clear --env=prod --no-debug
app/console cache:warmup --env=prod
app/console assets:install --symlink
app/console assetic:dump --env=prod --no-debug

当 CSS 没有加载时,这些命令对我有帮助。每当做这样的事情时,我总是喜欢清除我的缓存。app/console assetic:dump --env=prod我认为是使这项工作发挥作用的命令,因为它是将 CSS 和 JS 编译到一个文件中的命令。

于 2014-12-22T20:36:33.007 回答