사진 올리기: Supabase Storage
관리자 페이지에서 사진을 올리면 사이트에 바로 보이게 만들어요. 사진은 데이터베이스가 아니라 파일 저장소(Storage)에 따로 보관해요.
🎯 이번 레슨을 마치면
- 사진 같은 파일은 데이터베이스가 아니라 파일 저장소에 보관한다는 것을 안다
- Supabase Storage의 공개·비공개 보관함 차이를 안다
- Codex에게 사진 업로드 기능을 맡기고 검수할 수 있다
사진은 어디에 저장할까?
관리자가 사진 선택 관리자 페이지
Storage에 저장 사진 파일 보관
데이터베이스에 주소 기록 글과 사진 주소 연결
사이트에 표시 주소로 사진 불러오기
공개 보관함 vs 비공개 보관함
Supabase Storage에서는 파일을 보관함(bucket) 단위로 나눠요.
| 🌍 공개 보관함 | 🔒 비공개 보관함 | |
|---|---|---|
| 누가 볼 수 있나요? | 주소만 알면 누구나 | 권한이 있는 사람만 |
| 어울리는 파일 | 포트폴리오 사진, 상품 사진, 배너 | 회원 증명서, 개인 첨부 파일 |
| 올리기·지우기 | 규칙으로 관리자만 | 규칙으로 본인 또는 관리자만 |
Codex에게 맡기기
관리자 페이지의 글 작성 화면에 대표 사진 올리기 기능을 추가해 줘. 저장은 Supabase Storage를 쓸 거야. - 사진은 누구나 볼 수 있는 공개 보관함에 두고, 올리기·바꾸기·지우기는 관리자만 할 수 있게 규칙을 정해 줘. - jpg, png, webp만 받고, 한 장에 5MB까지만 올릴 수 있게 해 줘. - 올리기 전에 사진 크기를 웹에 알맞게 줄여 줘. (가로 최대 1600px 정도) - 글을 지우면 연결된 사진도 함께 지워지게 해 줘. - 사진에는 대체 텍스트(alt)를 입력하는 칸도 만들어 줘. 코드를 바꾸기 전에 보관함 설정과 규칙을 어떻게 만들지 먼저 설명해 줘.
검수하기
퀴즈
사진 파일을 저장하는 방법으로 가장 알맞은 것은?
📝 정리해 볼까요?
- 사진·동영상 같은 큰 파일은 파일 저장소(Storage)에 두고, 데이터베이스에는 그 파일의 주소만 적어요.
- 누구나 봐도 되는 사진은 공개 보관함, 회원 개인 파일은 비공개 보관함에 둬요. 올리기·지우기는 관리자만 하게 규칙을 정해요.
- 크기 제한, 파일 종류 제한, 사진 크기 줄이기를 함께 해야 비용과 속도를 지킬 수 있어요.
📖 새로 나온 용어
- Supabase
- PostgreSQL 데이터베이스와 로그인, 파일 저장소 등을 한 번에 제공하는 서비스예요. 비유: 주방 설비가 다 갖춰진 임대 주방
- RLS Row Level Security
- 데이터베이스의 한 줄 한 줄마다 "누가 보고 고칠 수 있는지" 정하는 보안 규칙이에요. 비유: 사물함마다 주인만 여는 자물쇠
잘했어요! 완료 표시는 이 브라우저에 저장돼요.