首页 > 解决方案 > Liip Imagine ProxyResolver - 如何删除桶前缀

问题描述

app.imagine.cache.resolver.proxy:
        class: Liip\ImagineBundle\Imagine\Cache\Resolver\ProxyResolver
        arguments:
            - "@app.imagine.cache.resolver.s3"
            - [ '%env(S3_CDN_URL)%' ]
        tags:
            - { name: "liip_imagine.cache.resolver", resolver: "proxy" }
app.s3:
        class: Aws\S3\S3Client
        factory: [Aws\S3\S3Client, factory]
        arguments:
            -
                version: 'latest'
                region: 'fra1'
                endpoint: '%env(S3_BASE_URL)%'
                credentials:
                    key: '%env(S3_KEY)%'
                    secret: '%env(S3_SECRET_KEY)%'
app.imagine.cache.resolver.s3:
        class: Liip\ImagineBundle\Imagine\Cache\Resolver\AwsS3Resolver
        arguments:
            - "@app.s3"
            - '%env(S3_BUCKET_NAME)%'
        tags:
            - { name: "liip_imagine.cache.resolver", resolver: "s3" }

问题是我想使用 DigitalOcean 空间 CDN,它的 CDN 是每个桶,所以没有桶前缀。

最后我得到一个解析的网址,如:

S3_CDN_URL/bucketName/filePath

这是不存在的。

我需要得到:

S3_CDN_URL/filePath

我找不到任何设置。

基本上,我需要以“虚拟托管样式”访问 S3:https ://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro

标签: symfonysymfony4liipimaginebundle

解决方案


推荐阅读