Symfony 5 LiipImagineBundle映像未创建到缓存中

Symfony 5 LiipImagineBundle映像未创建到缓存中,symfony,liipimaginebundle,Symfony,Liipimaginebundle,对于Symfony 5,我尝试使用LiipImagineBundle,它正确地与Symfony 4.4配合使用。现在,映像不会创建到配置指定的缓存中 因此图像不再显示,我得到了以下错误: 获取 404(未找到) 这是我的LiipImagine配置: liip_imagine: resolvers: default: web_path: web_root: "%kernel.project_dir%/public" ca

对于Symfony 5,我尝试使用LiipImagineBundle,它正确地与Symfony 4.4配合使用。现在,映像不会创建到配置指定的缓存中

因此图像不再显示,我得到了以下错误:

获取

404(未找到)

这是我的LiipImagine配置:

liip_imagine:
  resolvers:
    default:
      web_path:
        web_root: "%kernel.project_dir%/public"
        cache_prefix: "images/cache"
  filter_sets:
    thumb:
     quality: 75
     filters:
       thumbnail:
         size: [360, 360]
         mode: outbound
         allow_upscale: true
    medium:
     quality: 75
     filters:
       thumbnail:
         size: [500, 500]
         mode: outbound
         allow_upscale: true
    tiny:
     quality: 75
     filters:
       thumbnail:
         size: [35, 35]
         mode: outbound

在nginx php fpm上也有同样的问题,经过一天的挖掘,我发现nginx不会在生成的图像之后再进一步,因为get是404,所以需要在nginx配置中添加如下内容:

# assets, media
location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ {
    expires    7d;
    log_not_found off;
    access_log off;
    try_files $uri $uri/ /index.php?$query_string;
}

因此,如果找不到图像,它将用查询字符串命中索引。

在nginx php fpm上也有同样的问题,经过一天的挖掘,我发现nginx在生成图像后不会再尝试进一步,因为get是404,所以需要在nginx配置中添加如下内容:

# assets, media
location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ {
    expires    7d;
    log_not_found off;
    access_log off;
    try_files $uri $uri/ /index.php?$query_string;
}

因此,如果找不到图像,它将使用查询字符串命中索引。

尝试在前面添加斜杠:cache\u前缀:“/images/cache”。或者,如果您只使用默认设置:web\u路径:~?你对liip_imagine的看法是什么?也许升级它会有帮助,因为其他人也有这个问题,非常感谢你的帮助。如果使用web\u路径:~或缓存前缀:“/images/cache”,则无法工作。我的LiipImagineBundle版本是2.3.0,因为Symfony 5的默认数据根设置是/web,而您有/public。因此,请尝试将数据根设置为public。。。liip\u imagine:loaders:default:filesystem:data\u root:“%kernel.project\u dir%/public”非常感谢您的帮助。但是,我添加了此设置,不幸的是,它没有改变问题。请尝试在前面添加斜杠:cache_前缀:“/images/cache”。或者,如果您只使用默认设置:web\u路径:~?你对liip_imagine的看法是什么?也许升级它会有帮助,因为其他人也有这个问题,非常感谢你的帮助。如果使用web\u路径:~或缓存前缀:“/images/cache”,则无法工作。我的LiipImagineBundle版本是2.3.0,因为Symfony 5的默认数据根设置是/web,而您有/public。因此,请尝试将数据根设置为public。。。liip\u imagine:loaders:default:filesystem:data\u root:“%kernel.project\u dir%/public”非常感谢您的帮助。但是,我添加了此设置,不幸的是,它没有改变问题。这没有帮助,但是切换回apache帮助。这没有帮助,但是切换回apache帮助。