Symfony3:在web / cache / media文件夹中显示图像位置

时间:2016-06-20 06:16:26

标签: php symfony liipimaginebundle

我正在使用ImagineBundle,我试图显示已过滤的图片。

我的枝条代码是:

<img src="{{ currentProfileImage|default|imagine_filter('my_thumb') }}" />

如果没有过滤器,图像将从路径正确显示:

<img src="/bundles/templates/uploads/images/my_folder/01c2b593148119e2dbcf40fef147542b.jpeg" />

但是应用过滤器后,我得到以下输出:

<img src="http://www.example.com/media/cache/my_thumb/bundles/templates/uploads/images/my-folder/01c2b593148119e2dbcf40fef147542b.jpeg" />

应用滤镜后,图片不显示..如果我尝试在地址栏中复制/粘贴路径:http://www.example.com/media/cache/my_thumb/bundles/templates/uploads/images/my-folder/01c2b593148119e2dbcf40fef147542b.jpeg

表示未找到路线..

我意识到没有显示任何未放置在web / bundles文件夹中的图像..

有什么想法吗?

由于

更新: config.yml看起来像这样:

liip_imagine:
resolvers:
   default:
      web_path: ~

filter_sets:
    cache: ~
    my_thumb:
        quality: 75
        filters:
            thumbnail: { size: [120, 90], mode: outbound }

1 个答案:

答案 0 :(得分:2)

您似乎忘了添加LiipImagineBundle's description中提到的路由:

# app/config/routing.yml

_liip_imagine:
    resource: "@LiipImagineBundle/Resources/config/routing.xml"

使用此套装时,您无法直接访问图像。你得到一个urg到ImagineBundle的动作,检查文件是否存在于缓存文件夹中(这意味着它已经生成),如果没有,它会创建一个。