我用的是Symfony2和Assetic。最近我做了很多CSS工作,所以在某个时刻我需要命令
$ php app/console assetic:dump --env=prod --no-debug自从我使用它以来,我每次更改CSS时都需要运行该命令来查看不同之处。现在我做了一些研究,发现我可以将Assetic设置为监视模式,这样我就不必在每次更改后使用以下命令运行上面的命令:
$ php app/console assetic:dump --watch --env=prod然而,我只是想在我把它放到这个手动模式之前把它恢复过来。Symfony2文档解释了如何执行assetic转储,但没有说明如何将其放回动态模式(http://symfony.com/doc/current/cookbook/assetic/asset_management.html#dumping-asset-files)
有没有人知道怎么把它放回动态模式?
发布于 2015-08-09 22:15:59
Symfony不从内部控制器动态服务资产有两种可能的可能性:
1. assetic.use_controller不是真的
100%确认你正在告诉Symfony assetic.use_controller是true。一种简单的调试方法是将此代码添加到控制器操作的顶部,然后重新加载页面:
var_dump($this->container->getParameter('assetic.use_controller'));die();没有获得true作为返回值可能意味着您将覆盖config_dev.php或config_prod.php中的use_controller,具体取决于您所指向的环境。
2.您的web服务器在传递到Symfony之前正在检查静态资产
大多数and服务器都可以配置为检查URL是否指向物理文件资产并传送该文件。因此,如果您在Symfony中转储了资产,not服务器可能正在为该文件提供服务,而不是将请求传递到Symfony。
nginx的apache
解决方案是从文件系统中删除转储的资产文件。它们的位置取决于您将它们配置到的位置,但请检查web/js、web/bundles等。
https://stackoverflow.com/questions/31669193
复制相似问题