Так, я также хотел разместить свои загрузки за Cloudflare, используя Wasabi вместо S3, поэтому CloudFront недоступен.
В итоге я напрямую изменил базу данных и перезапустил Discourse, и всё заработало. Также, действительно ли важно использование HTTPS между CDN и S3, если бакет имеет только публичный доступ на чтение?
UPDATE site_settings SET value = 'uploads.domain.tld' WHERE name = 's3_upload_bucket';