我在一个项目中使用Sonata(http://sonata-project.org/bundles/media/2-2/doc/index.html(,我有50GB的拇指,分辨率我不再想要了。我修改了配置文件中的分辨率,但拇指仍然具有旧的分辨率/大小。
如何强制索纳塔重建我所有的拇指?
这对我有用:
php app/console sonata:media:sync-thumbnails sonata.media.provider.image default
据我所知,Sonata Media Bundle集成了LiipImagineBundle来创建图像缩略图。如果是这样,它会在第一次请求时创建拇指并保存在缓存中(实际上是一个目录(。因此,您必须清除图像缓存,LiipImagineBundle 将在下一个请求每个图像时重建它们。
要清除 LiipImagineBundle 映像缓存,可以使用控制台命令 liip:imagine:cache:remove
。其文档说:
liip:imagine:cache:remove
命令按指定删除缓存 参数。路径应用空格分隔:
php app/console liip:imagine:cache:remove path1 path2
给定paths
的所有缓存都将丢失。如果使用
--filters
参数:
php app/console liip:imagine:cache:remove --filters=thumb1 --filters=thumb2
给定筛选器的所有缓存都将丢失。您可以组合这些参数:
php app/console liip:imagine:cache:remove path1 path2 --filters=thumb1 --filters=thumb2
php app/console liip:imagine:cache:remove
在没有参数的情况下执行此命令时,所有路径和筛选器的缓存都将丢失。
因此,要清除所有缓存的图像,您应该使用:php app/console liip:imagine:cache:remove