# Django 5.2.9 문서

# WSGI를 사용하여 배포하는 방법

Django의 기본 배포 플랫폼은 웹 서버 및 애플리케이션을 위한 Python 표준인 WSGI_입니다.

Django의 :djadmin:’start project’ 관리 명령은 프로젝트에 필요한 대로 수정할 수 있는 최소 기본 WSGI 구성을 설정하고 WSGI 호환 애플리케이션 서버를 사용하도록 지시합니다.

Django에는 다음 WSGI 서버에 대한 시작 설명서가 포함되어 있습니다.

- Gunicorn과 함께 django 사용방법
- uWSGI와 함께 django를 사용하는 방법
- django와 아파치 사용법, mod_wsgi 사용법
- Apache에서 Django의 사용자 데이터베이스에 대해 인증하는 방법

## 애플리케이션 객체

WSGI와 함께 배치하는 핵심 개념은 애플리케이션 서버가 코드와 통신하기 위해 사용하는 “애플리케이션” 호출 가능이다. 그것은 일반적으로 서버가 접근할 수 있는 파이썬 모듈에서 “애플리케이션”이라는 이름의 객체로 제공된다

:djadmin:’start project’ 명령은 :file:’/wsgi 파일을 생성합니다.그러한 ``응용프로그램”을 포함한 py는 호출할 수 있다.

Django의 개발 서버와 프로덕션 WSGI 배포에서 모두 사용됩니다.

WSGI 서버는 구성에서 호출 가능한 “애플리케이션”의 경로를 얻는다. Django의 내장 서버, 즉 :djadmin:’runserver’ 명령어는 :set 에서 읽는다.’WSGI_APPLICATION’ 설정. 기본적으로 이 프로그램은 “.wsgi.application”으로 설정되어 있는데, 이는 “:file:”/wsgi.py으로 호출 가능한 애플리케이션”을 가리킵니다.

## 설정 모듈 구성

WSGI 서버가 응용프로그램을 로드할 때 Django는 전체 응용프로그램이 정의된 설정 모듈을 가져와야 합니다.

Django는 :envvar를 사용합니다.’DJANGO_SETTINGS_MODULE’ 환경변수로서 적절한 설정모듈을 찾을 수 있다. 설정 모듈에 대한 점선 경로를 포함해야 합니다. 개발 및 프로덕션에 다른 값을 사용할 수 있습니다. 모든 값은 설정을 구성하는 방법에 따라 다릅니다.

이 변수가 설정되지 않은 경우 기본값:file:’wsgi’입니다.py는 그것을 ``내 사이트”로 설정한다.”내 사이트”가 프로젝트의 이름인 설정”입니다. 이렇게 하면 :djadmin:’runserver’는 기본적으로 기본 설정 파일을 검색합니다.

참고

환경 변수가 공정 범위이기 때문에 동일한 공정에서 여러 D장고 사이트를 실행하는 경우에는 이 작업이 수행되지 않습니다. mod_wsgi에서는 이러한 현상이 발생합니다.

이 문제를 방지하려면 mod_wsgi의 데몬 모드를 자체 데몬 프로세스에서 사용하거나 ``os.viron[“를 적용하여 환경에서 값을 재정의하십시오.DJANGO_SETTINGS_MODULE”] “ “my site”.설정’은 : 파일에서:’wsgi’입니다.

## WSGI 미들웨어 적용방법

적용 방법:pep:WSGI 미들웨어 <333# 미들웨어-구성 요소-저 양면 재생>은 애플리케이션 객체를 포장할 수 있습니다. 예를 들어 :file:’wsgi’의 맨 아래에 이러한 줄을 추가할 수 있습니다.

    from helloworld.wsgi import HelloWorldApplication

    application = HelloWorldApplication(application)

또한 Django WSGI 응용 프로그램을 다른 프레임워크의 WSGI 응용 프로그램과 결합하려면 Django WSGI 응용 프로그램을 나중에 Django WSGI 응용 프로그램으로 위임하는 사용자 지정 WSGI 응용 프로그램으로 대체할 수 있습니다.