방금 문제를 발견했습니다. Cloudflare R2는 S3 엔드포인트 URL에서 public-read를 허용하지 않으며, 커스텀 도메인 또는 랜덤 r2.dev 도메인에서만 허용합니다.
(프리사인 다운로드(Presigned downloads)는 작동하지만, 직접적인 공개 액세스는 지원되지 않습니다.)
하지만 Discourse는 임베드된 이미지에만 CDN URL을 사용하고, S3 엔드포인트 URL을 사용하는 직접 다운로드에는 사용하지 않습니다.
모든 파일에 대해 CDN URL을 사용하게 하거나, presigned URL 사용을 강제하는 방법이 있을까요?
관련 링크:
해당 게시물에서 언급된 우회 방법이 작동합니다. ?dl=1을 추가하면 Discourse가 presigned S3 URL을 사용하도록 강제되어 문제가 해결됩니다.