1

我只是想让 LiipImagineBundle 工作。

#app/config/confiy.yml
# liip_imagine Configuration
liip_imagine:
resolvers:
    default:
        web_path:
            web_root: %kernel.root_dir%/../web
            cache_prefix: media/cache

loaders:
    default:
        filesystem:
            data_root: %kernel.root_dir%/../web/

#....
#...
filter_sets:
    medium:
        quality:              100
        filters:
            thumbnail: { size: [280, 280], mode: outbound }
#....
#...
# Twig Configuration
twig:
    debug:            "%kernel.debug%"
    strict_variables: "%kernel.debug%"
    globals:
            upload_folder: "uploads/"

如果使用:

app/console liip:imagine:cache:resolve /uploads/photos/3/01.jpg  --filters=medium

它工作正常。

但使用后:

#src/Hy/PhotoBundle/Resources/views/Photo/index.html.twig
  {% for entity in pagination %}
        {% set photo=upload_folder~entity.fileManaged.uri %}
         <img src="{{ asset(photo | imagine_filter('medium')) }}" />
   {% endfor %}

图像未呈现,根本找不到路径错误。

有小费吗?

http://i.stack.imgur.com/rVbwv.png

4

1 回答 1

1

默认的 nginx 配置会将以 jpg、gif 等结尾的 url 短路到文件系统而不是应用程序。您应该像这样改进您的 nginx 配置:

location @rewriteapp {
    rewrite ^(.*)$ /app.php/$1 last;
}

location ~ \.(png|jpeg|jpg|gif)$ {
    if (-f $request_filename) {
        expires 365d;
        access_log off;
    }
    try_files $uri @rewriteapp;
}
于 2017-04-18T14:14:48.693 回答