호스팅 매뉴얼

Home > 호스팅 > 컨테이너호스팅 > Python 사용하기

미디어 파일을 실시간으로 서비스하기 위한 Django 설정법 미디어 파일을 실시간으로 서비스하기 위한 Django 설정법

• Python 파일 내 URL 설정 및 디렉토리 경로를 정확하게 작성해주시기 바랍니다.

• 아래 매뉴얼은 Django 프레임워크를 기준으로 작성되었습니다.

 

Django의 Production 환경은 보안상의 문제로 인해 새롭게 업로드되는 이미지나 css, js 파일과 같은 정적 파일들의 경로를 실시간으로 읽어오지 못합니다.

이러한 문제를 해결하기 위해 가비아 파이썬 호스팅은 특정 디렉토리를 통해 미디어 파일을 제공해 실시간으로 서비스할 수 있는 방법을 제공합니다.

해당 매뉴얼은 특정 디렉토리를 통해 미디어 파일을 서비스하는 방법을 안내합니다.

 

 

1. 홈 디렉토리에 _media 디렉토리를 생성합니다.

 

cd ~
mkdir _media
ls -al

drwxr-xr-x 2 guserusers  6  7월  8 11:31 _media
drwxr-xr-x 3 guser users 36  7월  8 11:40 hello

 

파이썬 호스팅에서는 _media 디렉토리를 통해서만 미디어 파일을 제공할 수 있으며, 경로 변경은 불가능합니다.

다른 디렉토리에서 미디어 파일을 제공하고 있다면, 심볼릭 링크를 활용해 미디어 파일을 제공할 수 있습니다.

 

ln -s hello/media_dir _media
ls -al

lrwxrwxrwx 1 guserusers  7  7월  8 11:45 _media -> hello/media_dir

 

 

2. Django 프로젝트의 urls.py 파일에 내용을 추가합니다.

urls.py 파일은 대부분 프로젝트명/urls.py 경로에 위치해 있습니다.

 

cd hello
vi hello/urls.py


from django.urls import re_path
from django.views.static import serve

urlpatterns = [
    ...
re_path(r'^media/(?P<path>.*)$', serve, {'document_root':settings.MEDIA_ROOT}),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

 

 

3. Django 프로젝트의 settings.py 파일 내부의 설정을 다음과 같이 수정하거나 추가합니다.

 

vi hello/settings.py

MEDIA_URL = '/_media/'
MEDIA_ROOT = os.path.join(BASE_DIR, '_media')

 

 

4. 기존 방식과 동일하게 웹 애플리케이션을 실행합니다.

 

 

• 컨테이너 호스팅 환경에 따라 위 매뉴얼의 방법으로 설정이 완료되지 않을 수 있습니다.

• 위 방법으로 설정이 완료되지 않으면 [가비아 고객센터 > 1:1문의]로 문의하시기 바랍니다.

  • 컨테이너호스팅 시작하기

    • DNS 설정하기

    • SFTP/SSH 접속하기

    • DB 접속하기

    • phpPgAdmin 접속 설정하기

  • 관리 콘솔

    • 관리 콘솔 알아보기

  • 자원 현황

    • 사용량 현황 보기

    • 트래픽 당겨쓰기

    • 웹 용량 추가하기

    • 트래픽 추가/충전하기

    • 웹 용량 차단 해제하기

    • 용량 초과 알림 설정하기

    • 메모리 용량 추가하기

  • 기본 정보

    • 서비스 시작일/만기일 보기

    • 소유자/관리자 정보 보기

    • 타입 변경하기

    • 주간운영리포트 수신 설정하기

    • 장애 알림 받기

  • 도메인

    • 대표 도메인 변경하기

    • 도메인 연결/해지하기

  • 보안 설정

    • 웹 서버(SFTP/SSH) 접속 설정하기

    • 웹 서버(SFTP/SSH) 비밀번호 변경하기

    • 웹사이트 접근 IP 관리하기

    • SSH/SFTP 접속 차단 IP 해제하기

    • DB 서버 비밀번호 변경하기

    • 웹 서버 접속 허용 IP 등록하기

    • 웹쉘 탐지 관리하기

  • 웹 서버

    • 웹 서버 환경 변경하기

    • 웹 서버 초기화하기

    • 웹 서버 접속 허용 IP 등록하기

    • 웹 서버(SFTP/SSH) 비밀번호 변경하기

    • 웹 로그 보기

  • DB 서버

    • DB 서버 비밀번호 변경하기

    • phpPgAdmin 접속 설정하기

    • DB 접속하기

    • MySQL 서버 접속/백업/복원하기

    • DB 서버 환경 변경하기

    • DB 서버 초기화하기

  • 백업/복원

    • 백업하기

    • 복원하기

  • 모니터링

    • 서버 현황 보기

    • 웹/DB 현황 보기

    • 사이트 웹 로그 분석하기

    • 슬로우 쿼리 확인하기

    • 트래픽 현황 보기

    • 이력 관리하기

  • 메일

    • 메일 관리하기

  • 서비스 계약 관리

    • 결제 알림 설정하기

    • 담당자 정보 변경하기

    • 서비스 해지하기

  • Node.js 사용하기

    • Node.js 환경 확인하기

    • 프로세스 관리 도구 사용하기

    • 기본 웹 애플리케이션 만들기

    • Express로 웹 애플리케이션 만들기

    • NVM으로 버전 관리하기

    • SSL 인증서 설치 후 HTTPS 통신 강제 적용하기

    • 채팅 서버 만들기

    • MySQL 모듈 기본 사용 방법

  • Python 사용하기

    • Python 환경 확인하기

    • 패키지 관리 도구 사용하기

    • Flask로 기본 웹 애플리케이션 만들기

    • Django로 웹 애플리케이션 만들기

    • Gunicorn으로 정적 파일 서비스하기

    • 미디어 파일을 실시간으로 서비스하기 위한 Django 설정법

    • SSL 인증서 설치 후 HTTPS 통신 강제 적용하기

  • Java 사용하기

    • Java 환경 확인하기

    • Spring Boot CLI로 프로젝트 생성하기

    • Spring Boot CLI로 Groovy 웹 프로젝트 실행하기

    • Maven으로 SpringBoot 웹 프로젝트 실행하기

    • Gradle로 SpringBoot 웹 프로젝트 실행하기

    • 빌드한 웹 프로젝트 실행하기

    • SSL 인증서 설치 후 HTTPS 통신 강제 적용하기

  • Redis 사용하기

    • Node.js와 Redis 연동하기