Liipimagine捆绑包-未缓存图像

时间:2019-01-24 09:39:34

标签: symfony ubuntu caching rights liipimaginebundle

我收到了一个项目,我正在尝试在 NGINX 环境的 Docker 中启动它。但似乎我在LiipImagine中有一个错误。该项目使用Symfony 4和LIIPImagine版本2.0.x-dev。

页面应显示来自缓存的图像,例如图像URL: https://localhost:8443/media/cache/live_feed_message/images/live_feed_message/5c486df1a78fe_lama-750389_960_720.jpg

该目录具有权限:

drwxr-xr-x 2 1000 1000 4069 Jan 23 13:35 live_feed_message

所有图像均存储在 public / images / live_feed_mesage / public / media / cache / live_feed_message / images / live_feed_message 中。

/ p>

我发现,如果我使用LiipImagine的命令: php应用程序/控制台liip:imagine:cache:resolve relative / path / to / image1.jpg

它给出了这个结果:

http://localhost/media/cache/quizz_thumbnail/images/live_feed_message/name_file.jpg
http://localhost/media/cache/quizz_sponsors_icon/images/live_feed_message/name_file.jpg
http://localhost/media/cache/live_feed_message/images/live_feed_message/name_file.jpg

然后相应的图像存在于缓存中(public / media / cache / live_feed_message / images / live_feed_message),并且图像正确显示在页面上...

在开发控制台的“网络”选项卡中,我检查了HTTP请求的响应。我得到了Symfony的回复:

Unable to write to the "/srv/api/public/media/cache/live_feed_message/images/live_feed_message" directory.

有人知道可能是什么问题吗?

自2天以来我无法解决此问题,因此感谢您的帮助!

PS :我从捆绑包中覆盖了来自 routing.yaml 的路由。 在路径中有/ resolve,我对此进行了覆盖(实际上我从liip_imagine_filter路径中删除了 / resolve ):

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


liip_imagine_filter:
    path:  /media/cache/{filter}/{path}
    defaults:
        _controller: '%liip_imagine.controller.filter_action%'
    methods:
        - GET
    requirements:
        filter: '[A-z0-9_-]*'
        path: .+

1 个答案:

答案 0 :(得分:0)

您也许应该对chmod -R 777 public/images放宽一些。在本地这不是什么大不了的事,在生产环境中,您应该微调权限。那可能会清除您的错误,并且可以继续进行编码。

实际生产许可为755 IIRC。