gpt4 book ai didi

Symfony、Liip Imagine bundle 无法在产品环境中的服务器上运行

转载 作者:行者123 更新时间:2023-12-02 16:12:11 24 4
gpt4 key购买 nike

我有一个项目,我将上传的图像保存在 src/My/Bundle/Resources/uploads/images/full 中,并使用 twig 过滤器 imagine_filter 动态创建缩略图。

在我的本地计算机上它可以完美地工作,在我的服务器上也是如此,但仅在开发环境下。当我删除以前创建的缩略图(仅保留 full 目录)、清除产品缓存并加载任何网页时,不会创建图像,它们的 url 始终保留在 media/cache,记录器给我request.ERROR:

"No route found for "GET /uploads/images/avatar/354026c94b773b77ca945b4a6323e15c84102f6b.jpg"" at /<path>/app/cache/prod/classes.php line 1964 {"exception":"[object] (Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException: No route found for \"GET /uploads/images/avatar/354026c94b773b77ca945b4a6323e15c84102f6b.jpg\" at /<path>/app/cache/prod/classes.php:1964, Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException:  at /<path>/app/cache/prod/appProdUrlMatcher.php:1816

一些附加信息:

  • 我已将 src/My/Bundle/Resources/uploads 符号链接(symbolic link)到 web/uploads
  • 我的配置是(thumbnail_min 是自定义过滤器):
    liip_想象:
    装载机:
    默认:
    文件系统:
    data_root: %kernel.root_dir%/../web/uploads/images/full
    解析器:
    默认:
    网络路径:
    web_root: %kernel.root_dir%/../web
    缓存前缀:/上传/图像
    缓存:默认
    过滤器集:
    头像:
    质量:90
    过滤器:
    thumbnail_min: { 大小: 50, 模式: 插入 }
    ....
    满的:
    质量:100
  • 权限始终至少为 rw 组(这是服务器所需的权限)

最佳答案

刚刚在我的本地计算机上遇到了类似的问题,但仍在开发环境中。

对我来说,我缺少默认媒体/缓存文件夹的组可写权限,该文件夹在 liip:imagine:cache:remove 和页面重新加载后保持为空。因此图像链接到空文件夹。

为了解决这个问题,我首先确保组设置为 Apache 的 _www (mac)/www-data (linux),例如

  • sudo chgrp -R www-data web/media/cache

然后确保该文件夹设置为可读、可写和可执行,例如

  • sudo chmod -R g+rwx 网络/媒体/缓存

希望这有帮助...

关于Symfony、Liip Imagine bundle 无法在产品环境中的服务器上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24381994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com