모호한 질문은 정말 싫습니다. "이것"이라고 질문하실 때 무엇을 생각하고 계셨나요?
현재 제 설정은 다음과 같습니다:
Discourse 설정:
- 표준 단일 컨테이너 설치
- 서브도메인으로 설정: forums.domain.tld
- 업로드를 위한 표준 S3 설정
- 업로드 파일은 S3에 저장됨
S3 설정:
- Digital Ocean S3 버킷
- 외부 액세스가 활성화된 버킷
- 기타 보안 계층 또는 권한 없음
CDN 설정:
- bunny CDN
- 허용된 리퍼러 설정: domain.tld 및 *.domain.tld
- 아바타 액세스를 차단한 전환 스위치는 "직접 URL 파일 액세스 차단"이었습니다.
이 기능이 켜지면 모든 아바타에 403 오류가 발생합니다. 꺼지면 아바타가 정상적으로 표시됩니다.
아바타가 아닌 이미지:
- Discourse 내 URL:
https://cdn.domain.tld/optimized/3X/3/1/filename_#_size.jpeg
아바타 이미지:
- Discourse 내 URL:
https://forums.domain.tld/user_avatar/forums.domain.tld/mazzini/48/776_2.png
이전 게시물인 아바타는 어떻게 저장되고 액세스됩니까?에 따르면 Discourse는 아바타에 프록시를 사용한다고 합니다. 따라서 아바타의 URL 구조는 표준 이미지 URL 구조가 아닙니다.
제 시스템 내에서 아바타는 S3 또는 CDN에서 액세스 가능합니다. 이는 어딘가에서/어떤 방식으로든 아바타 URL이 CDN URL로 변환되고 있음을 의미합니다.
이것이 발생하면 CDN은 해당 URL을 직접 액세스 링크로 간주하여 403으로 액세스를 차단합니다.
마침내 "이것"에 대한 질문에 답을 드린 것 같습니다.