# Django 6.0.7 문서

# 장고를 배포하는 방법

Django는 웹 개발자의 생활을 더 쉽게 만들 수 있는 지름길로 가득 차 있지만, 사이트를 쉽게 배치할 수 없다면 이러한 도구들은 아무 소용이 없습니다. django의 설립 이후, 배치의 용이성이 주요 목표였다.

아키텍처 또는 특정 비즈니스 요구 사항에 따라 Django 애플리케이션을 배포하는 방법에는 여러 가지가 있지만 이러한 논의는 Django가 지침으로 제공할 수 있는 범위를 벗어납니다.

웹 프레임워크인 Django는 동작하려면 웹 서버가 필요합니다. 대부분의 웹 서버는 Python을 기본적으로 지원하지 않기 때문에 이러한 커뮤니케이션을 가능하게 하는 인터페이스가 필요합니다. `runserver` 명령은 가벼운 개발 서버를 시작하지만, 이 서버는 프로덕션에 적합하지 않습니다.

Django는 현재 WSGI와 ASGI의 두 가지 인터페이스를 지원합니다.

- WSGI는 웹 서버와 애플리케이션 간의 통신을 위한 주요 파이썬 표준이지만 동기식 코드만 지원한다.

- ASGI는 당신의 Django 사이트에서 비동기 Python 기능과 비동기 Django 기능을 개발하면서 사용할 수 있게 해주는 새로운 비동기 친화적인 표준이다.

응용 프로그램에 대해 :doc:’static files’를 어떻게 처리할 것인지와 :doc:’error reporting’을 어떻게 처리할 것인지도 고려해야 한다.

마지막으로 애플리케이션을 프로덕션 환경에 배포하기 전에 구성이 적절한지 확인하기 위해 :doc:`deployment checklist </howto/deployment/checklist>`를 검토해야 합니다.

- WSGI를 사용하여 배포하는 방법
  - How to use Django with Granian
  - Gunicorn과 함께 django 사용방법
  - uWSGI와 함께 django를 사용하는 방법
  - django와 아파치 사용법, mod_wsgi 사용법
  - Apache에서 Django의 사용자 데이터베이스에 대해 인증하는 방법
  - 애플리케이션 객체
  - 설정 모듈 구성
  - WSGI 미들웨어 적용방법
- ASGI를 사용하여 배포하는 방법
  - 다프네와 함께 django를 사용하는 방법
  - How to use Django with Granian
  - 하이퍼콘과 함께 장고를 사용하는 방법
  - django와 유비콘 사용방법
  - 애플리케이션 객체
  - 설정 모듈 구성
  - ASGI 미들웨어 적용
- 배포 전 체크리스트
  - `manage.py check --deploy` 명령 실행
  - ``manage.py runserver``에서 전환
  - 중요 설정
  - 특정한 환경 설정
  - HTTPS
  - 성능 최적화
  - 오류 알림