디지털오션 스페이스에서 대용량 PDF 파일 자동 다운로드 문제 해결 방법
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- *대상**: 웹 개발자, 클라우드 서비스 사용자
- *난이도**: 중급 (HTTP 헤더 및 CDN 동작 이해 필요)
핵심 요약
Content-Disposition: inline
헤더 설정으로 브라우저가 PDF를 미리보기로 표시- AWS CLI를 사용해 파일 업로드 시
--content-disposition inline
명령어 사용 - CDN 기반 파일 서빙 시 대용량 파일의 경우 기본적으로 다운로드 모드 적용
섹션별 세부 요약
1. 문제 현상: 대용량 PDF 자동 다운로드
- 20MB 이상의 PDF 파일을 직접 URL로 열면 브라우저가 자동으로 다운로드
- 5MB 미만 파일은 브라우저 내 미리보기 지원
2. 헤더 설정의 영향: `Content-Disposition`
attachment
설정 시 브라우저가 파일을 다운로드 강제inline
설정 시 브라우저가 파일을 미리보기로 표시Content-Type: application/pdf
설정 필수
3. 해결 방법: AWS CLI로 파일 업로드
- AWS CLI 명령어 예시:
```bash
aws s3 cp ./sample.pdf s3://your-space-name/ \
--endpoint-url https://your-space-endpoint \
--content-type application/pdf \
--content-disposition inline
```
- 기존 파일 업로드 시 메타데이터 수정 필요 (SDK 사용 권장)
4. 결과 확인: 브라우저 및 네트워크 툴 사용
- DevTools → Network 탭에서 응답 헤더 확인:
- ✅
Content-Type: application/pdf
- ✅
Content-Disposition: inline
결론
- *핵심 팁**:
- 대용량 파일 서빙 시
Content-Disposition: inline
헤더를 반드시 설정 - AWS CLI 또는 SDK를 사용해 파일 업로드 시 메타데이터 수정
- DevTools로 헤더 설정이 올바르게 적용되었는지 확인
- CDN 기반 서비스의 경우, 파일 크기에 따른 동작 차이를 사전에 고려해야 함