Pubblicherò questo messaggio qui, poiché Configure an S3 compatible object storage provider for uploads è impostato per eliminare tutte le risposte dopo un mese.
La mancanza di un content-encoding nell’implementazione del CDN di DO è sicuramente un peccato, ma si verifica solo quando si impostano tutti i parametri S3 all’interno di app.yml. Se questi parametri sono impostati nelle impostazioni del sito tramite la console di amministrazione web, DO serve le upload S3 solo tramite CDN, mentre le risorse del sito continuano a essere servite dalla fonte.
Sembra che questo sia intenzionale, poiché la variabile d’ambiente DISCOURSE_S3_CDN_URL, se impostata in app.yml, sovrascrive anche l’impostazione del CDN per le risorse, mentre la stessa impostazione, se dichiarata solo nelle impostazioni del sito, non lo fa?
Questa è un po’ inconsistente, ma consente di utilizzare il CDN di DO solo per le upload S3, senza danneggiare il sito:
Ci sono due modi per farlo:
- dichiarare tutte le impostazioni S3 solo nelle impostazioni del sito
rails c
SiteSetting.s3_upload_bucket="<bucket_name>/<uploads_folder>"
SiteSetting.s3_backup_bucket="<bucket_name>/<backups_folder>"
SiteSetting.enable_s3_uploads=true
SiteSetting.s3_access_key_id="<key>"
SiteSetting.s3_secret_access_key="<secret_key>"
SiteSetting.s3_endpoint="https://<sfo2>.digitaloceanspaces.com"
SiteSetting.s3_cdn_url="https://<bucket_name>.<sfo2>.cdn.digitaloceanspaces.com/<uploads_folder>"
SiteSetting.backup_location="s3"
- sovrapporre tutte le impostazioni S3 tranne
DISCOURSE_S3_CDN_URLinapp.ymle dichiarare il CDN di DO inSiteSetting.s3_cdn_url
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: <sfo2>
DISCOURSE_S3_ENDPOINT: https://<sfo2>.digitaloceanspaces.com
DISCOURSE_S3_ACCESS_KEY_ID: <key>
DISCOURSE_S3_SECRET_ACCESS_KEY: <secret_key>
# DISCOURSE_S3_CDN_URL: https://<bucket_name>.<sfo2>.cdn.digitaloceanspaces.com/<uploads_folder>
DISCOURSE_S3_BUCKET: <bucket_name>/<uploads_folder>
DISCOURSE_S3_BACKUP_BUCKET: <bucket_name>/<backup_folder>
DISCOURSE_BACKUP_LOCATION: s3
rails c
SiteSetting.s3_cdn_url="https://<bucket_name>.<sfo2>.cdn.digitaloceanspaces.com/<uploads_folder>"
@falco se sei d’accordo con questo, posso aggiornare l’argomento wiki originale