【问题标题】:LiipImageBundle & KNP Gaufrette bundle failing to resolve s3 image path?LiipImageBundle 和 KNP Gaufrette 捆绑包无法解析 s3 图像路径?
【发布时间】:2014-11-17 13:56:58
【问题描述】:

我正在使用 LiipImageBundle 和 KNP Gaufrette 包来调整大小并从 s3 加载图像。以前一切正常,但突然停止工作。没有捆绑版本升级。

下面是我的配置,

liip_imagine:
    cache: aws_s3_images
    data_loader: stream.aws_s3_images
    filter_sets:
        large:
            quality: 75
            cache: aws_s3_images
            data_loader: stream.aws_s3_images
            filters:
                relative_resize: { widen: 140 }
        medium:
            quality: 75
            cache: aws_s3_images
            data_loader: stream.aws_s3_images
            filters:
                thumbnail: { size: [50, 50], mode: outbound }
        small:
            quality: 75
            cache: aws_s3_images
            data_loader: stream.aws_s3_images
            filters:
                thumbnail: { size: [25, 25], mode: outbound }

    loaders:
        stream.aws_s3_images:
            stream:
                wrapper: gaufrette://aws_s3_images_fs/

knp_gaufrette:
    adapters:
        aws_s3_images_adapter:
            aws_s3:
                service_id: 'st.aws_s3.client'
                bucket_name: %amazon.s3.bucket%
                options:
                    #directory: 'fos'
                    create: true

    filesystems:
        aws_s3_images_fs:
            adapter:    aws_s3_images_adapter

    stream_wrapper: ~

问题很奇怪,如果我在新标签页中打开图片,它会重定向到 s3 图片 url 并显示图片。一旦它加载到新标签中,它就会开始正常显示。除非我打开新标签,否则它不起作用。

它不是解析 s3 路径吗?可能是什么问题 ?我尝试删除所有缓存,我的 web 目录中没有媒体文件夹。

在日志中显示 ImagineController:FilterAction 被调用。

在html源图片路径是

http://st.com/app_dev.php/media/cache/resolve/large/fos/user/ebc36103e6d1038791eb7eca2f4449db0780fdf41416235134.jpeg

现在如果我在新标签/窗口中打开它,它将重定向到

[MY_S3_BUCKET_URL]/fos/user/large/ebc36103e6d1038791eb7eca2f4449db0780fdf41416235134.jpeg

并将在新窗口中显示图像。

现在如果我再次刷新我的页面,图像源现在更改为

[MY_S3_BUCKET_URL]/fos/user/large/ebc36103e6d1038791eb7eca2f4449db0780fdf41416235134.jpeg

现在我可以看到图片加载了吗?

为什么它突然开始发生。之前一切正常。

【问题讨论】:

    标签: symfony amazon-s3 liipimaginebundle gaufrette


    【解决方案1】:

    经过LiipImaginBundle的所有代码&调试,原来是FOSRestBundle的内容类型问题

    format_listener:
        rules:
            - { path: '^/', priorities: [ '*/*' ], fallback_format: html, prefer_extension: true }
    

    改成

    format_listener:
        rules:
            - { path: '^/', priorities: [ 'html', '*/*' ], fallback_format: html, prefer_extension: true }
    

    修复了问题。

    【讨论】:

      猜你喜欢
      • 2014-09-20
      • 1970-01-01
      • 2015-01-04
      • 2022-01-03
      • 2015-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多