2017-12-07 15 views
1

서버에 Apache2를 통해 Django 프로젝트를 배포했습니다.Django + WSGI : wsgi.py는 언제 호출됩니까?

내가 가지고있는 문제는 두 개의 설정 모듈 : settings.py이 내 로컬 개발 설정이고 settingsprod.py이 내 생산적인 설정입니다.

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "proj.settings") 

이 WSGI를 사용하는 경우에만 호출이 모듈입니다 :

은 내가 WSGI.py에 다음 줄을 발견? 그리고 그렇다면 내 생산 설정을 사용하는 것이 좋습니다. 지역 발전을 위해

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "proj.settingsprod") 

나는과 같이 개발 서버를 사용

이 여전히 기본적으로는 settings.py를 할 수 있습니까
python3 manage.py runserver 

?

답변

2

예, 설치가 예상대로 작동합니다. 셀러리와 같은 추가 도구를 사용하는 경우 해당 설정에 대해서도 settingsprod을 지정해야 할 수도 있습니다.

이러한 상황을 처리하는 방법은 정확히 다른 방법입니다. 제 제작 설정에 settings.py을 사용하고 모든 개발 작업에 추가로 settings_development.py을 사용합니다. 내가없는이 방법은 모든 생산 관련 파일을 제작 설정을 설정 기억, 대신 단순히과 같이 개발을위한 개발 설정을 사용합니다 :

python3 manage.py runserver --settings=proj.settings_development 

자주 manage.py 명령을 사용하는 경우 및 저장할 얼마 동안 타이핑하면, manage.py의 사본을 만들 수 있습니다.

python3 manage_dev.py runserver 
:하여 관리하는 함수를 호출 한 후

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "proj.settings_development") 

과 : 및 manage_dev.py으로하는과 같이 설정을 모듈 라인을 변경