기술블로그
Flask Static 폴더를 활용한 이미지 관리 가이드
Chansman
2025. 4. 25. 04:43
📂 Flask Static 폴더를 활용한 이미지 관리 가이드
Flask 프로젝트에서 이미지 파일을 안정적으로 제공하려면 static 폴더를 활용하는 것이 가장 까금하고 효율적입니다.
✅ 1. Static 폴더란?
- Flask에서 정적 파일(CSS, JS, 이미지 등) 을 제공하는 기본 폴더
- URL을 통해 직접 접근 가능
- 서버 부회 없이 빠른 이미지 제공 가능
프로젝트 구조 예시
├── app/
│ ├── static/
│ │ └── images/
│ │ ├── main.png
│ │ ├── question1.png
│ │ └── question2.png
│ └── templates/
└── run.py
✅ 2. 이미지 추가 방법
- app/static/images/ 폴더 생성
- 사용하려는 이미지를 해당 폴더에 복사
값예시:
app/static/images/main.png
✅ 3. Flask에서 이미지 URL 호출하기
Flask에서는 url_for 함수를 사용해 static 파일 경로를 쉽게 생성할 수 있습니다.
from flask import url_for, jsonify, request
@app.route('/image/main')
def get_main_image():
image_url = url_for('static', filename='images/main.png')
return jsonify({"image": request.host_url[:-1] + image_url})
🔹 발한 예시
{
"image": "http://localhost:5000/static/images/main.png"
}
✅ 4. 클라이언트에서 호출하기
HTML, JS에서 이미지 태그에 바로 적용 가능!
<img src="http://localhost:5000/static/images/main.png" alt="메인 이미지">
✅ 5. 주의사항
- 배포 시에도 static 폴더는 그대로 제공됩니다.
- 이미지 경로가 변경되지 않도록 폴더 구조를 명확히 관리하세요.
- 파일명은 영미 소문자 + 숫자 조합 참고 (공백❌, 한글❌)
🚀 링크로가
이렇게 설정해놓으면 외부 URL 없이도 안전하게 이미지를 서비스할 수 있습니다!
특히 팀 프로머제트나 배포 환경에서도 CORS 문제 없이 활용 가능!
👍 기술블로그에 그대로 포스팅해서 활용하세요! 😄