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

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

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

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

애플리케이션 객체

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 응용 프로그램으로 대체할 수 있습니다.

Back to Top