symfony - Sonata Media Bundle + AWS S3 - 指定子目录?

标签 symfony amazon-web-services amazon-s3 subdirectory sonata-media-bundle

我正在为奏鸣曲媒体包使用 s3 提供程序。 AWS S3 存储是一个带有子文件夹的静态存储桶:

s3://bucketname/subfolder

如何使用 sonata 媒体包访问此子文件夹? 这是我的配置:

sonata_media:
default_context: default
db_driver: doctrine_orm
providers:
  image:
      filesystem:         sonata.media.filesystem.s3
      allowed_extensions: ['jpg', 'png', 'gif', 'jpeg']
      allowed_mime_types: ['image/pjpeg','image/jpeg','image/png','image/x-png', 'image/gif']
contexts:
    default:  # the default context is mandatory
        download:
            strategy: sonata.media.security.public_strategy
            mode: http

        providers:
            - sonata.media.provider.image

cdn:
    server:
        path: http://%bucket_name%.s3.amazonaws.com/subfolder

filesystem:
    local:
        directory:  %kernel.root_dir%/../web/uploads/media
        create:     false
    s3:
        bucket: %aws_bucket_name%
        accessKey: %aws_access_key%
        secretKey: %aws_secret_key%
        create: false
        region:
        storage: standard
        acl: public 

我在哪里可以设置子目录“子文件夹”? 因为目前我收到以下错误:

Failed to determine HOME directory after trying "cd: 1: can't cd to ~" (exit code 2), referer: http://nutella-fb-app.nadine.dresden.rsm-service.de/app_dev.php/admin/sonata/media/media/create?provider=sonata.media.provider.image&context=default

当我上传图片时。

附加问题:如何在前端显示图像?

感谢您的反馈。

最佳答案

我们找到了解决方案:

s3 provider 还有一个选项,你可以在其中设置一个子目录:

filesystem:
    s3:
        bucket: %aws_bucket_name%
        accessKey: %aws_access_key%
        secretKey: %aws_secret_key%
        create: false
        region:
        storage: standard
        directory: subfolder

关于symfony - Sonata Media Bundle + AWS S3 - 指定子目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29491425/

相关文章:

Symfony2 FOSUserBundle 角色实体

使用 cPanel 运行 CentOS 的 VPS 服务器上的 PHP CLI "Out of memory"错误

java - Elastic Beanstalk 上的 Clojure ring 应用程序出现 Postgres 版本错误

python - 在 Python 中将文件上传到 AWS S3 存储桶文件夹导致正则表达式错误

php - 如何用GET参数转发?

typescript - Symfony3 JWT 与 LexikJWTAuthenticationBundle 在预检选项上返回 404

amazon-web-services - 如果我几乎同时提交两个 CloudFormation 更改集,会发生什么情况?

javascript - 为上传到 AWS S3 的图像设置 Expires 和 Cache-Control header

python - Heroku:S3/boto3 - 错误:请使用 AWS4-HMAC-SHA256

java - 使用 Amazon Athena 从 S3 读取多个 json 文件