Skip to content

symbiote/silverstripe-s3cdn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

S3 CDN

Configuration

In your local configuration, specify something like the following to configure the content Reader/Writer pair, along with actually binding them to usable content stores for the CDN

---
Name: locals3settings
After: 
  - '#s3services'
---
Injector:
  S3Service:
    constructor:
      key: {your_api_key}
      secret: {your_api_secret}
          region: {region}
  S3ContentReader:
    type: prototype
    properties:
      s3service: %$S3Service
      bucket: {your_bucket_name}
      baseUrl: https://{your_bucket_name}.s3.amazonaws.com
  S3ContentWriter:
    type: prototype
    properties:
      s3service: %$S3Service
      bucket: {your_bucket_name}
      baseUrl: https://{your_bucket_name}.s3.amazonaws.com
  ContentService:
    constructor:
      defaultStore: Default
    properties:
      stores:
        Default:
          ContentReader: S3ContentReader
          ContentWriter: S3ContentWriter

Additionally, ensure you have the CDNFile extensions bound from the cdncontent module

File:
  extensions:
    - CDNFile
Folder: 
  extensions:
    - CDNFolder

To change the default ACL applied on upload reconfigure the defaultAcl option

Injector
  S3ContentWriter:
    type: prototype
    properties:
      s3Service: %$S3Service
      bucket: bucket
      defaultAcl: ""

See the CDN Content module for more details

Migrations

If you're looking to migrate either to, or from S3, please take a look at the build tasks included.

Troubleshooting

Resampled Images

The following queries may need to be run if you've done an SS upgrade and/or swapped to a new URL. This makes sure that all images are resampled correctly.

UPDATE File SET ResamplingsValue = '';
TRUNCATE TABLE `SilverStripeAustralia\ContentServiceAssets\ContentServiceAsset`;
TRUNCATE TABLE `Symbiote\ContentServiceAssets\ContentServiceAsset`;