2010-07-28 2 views
0

Apache + mod_wsgi를 사용하여 하나의 Django 코드베이스에서 여러 사이트를 실행할 계획입니다. 누구든지이 목표를 달성하는 데 도움을 줄 수 있습니까?mod_wsgi를 사용하는 단일 django 코드 기반의 다중 사이트

+1

비슷한 질문 : http://stackoverflow.com/questions/2655548/how-to-host-50-domains-sites-with-common-django-code-base/3058693 – sdolan

+0

정확하게 필요한 것을 정교하게 설명해 주시겠습니까? 다양한 사이트간에 변경하려면? 얼마나 많은 사이트를 다루고 있습니까? – sdolan

+0

현재 3 개의 사이트를 만들 계획입니다. 두 사이트는 공통 데이터베이스를 공유하고 하나의 사이트는 다른 데이터베이스를 공유합니다. 사이트 "A"와 사이트 "B"가 동일한 데이터베이스 (즉, DB1)를 갖고 사이트 "C"가 데이터베이스 DB2를 가질 수있는 3 개의 사이트 A, B, C가 있다고 가정합니다. 데이터베이스 "DB1"의 사용자 테이블 (즉, 사이트 "A"및 "B"의 사용자)의 사용자는 데이터베이스 "DB2"(즉, 사이트 "C"의 사용자)의 사용자와 연관되어야합니다. 이를 달성하는 방법에 대해 조언하십시오. 모든 사이트가 공통 항목을 공유 할 수도 있습니다. 달성 방법에 대해 자세히 알려주십시오. – Joseph

답변

0

다른 사용 settings modules.

+0

안녕하세요, 자세히 알려주세요. 사이트 설정 파일을 전역 설정 파일로 동적으로 가져와야합니다. 도와 주실 수 있나요? Apache + mod_wsgi에서 어떻게이 작업을 수행 할 수 있습니까? – Joseph

+0

사이트 별 설정에서 전역 설정을 가져옵니다. –

1
  • 모든 장고 프로젝트가 있어야 그것은 본다 자신의 mod.wsgi 파일 (반드시 호출되지 mod.wsgi, BTW)의 같은 : DJANGO_PATH의 모든 장고 프로젝트가 있었다 경로가

    import os, sys 
    sys.path.append('DJANGO_PATH') 
    sys.path.append('DJANGO_PATH/SITEPATH') 
    os.environ['DJANGO_SETTINGS_MODULE'] = 'SITE.settings' 
    
    import django.core.handlers.wsgi 
    application = django.core.handlers.wsgi.WSGIHandler() 
    

    SITEPATH는 특정 프로젝트가 상주하는 폴더입니다. 모든 사이트에 대한

    WSGIScriptAlias//DJANGOPATH/SITEPATH/mod.wsgi 
    

반복 :

  • 아파치에서처럼, 자신의 mod.wgsi 파일을 참조 모든 사이트에 대한 가상 호스트를 확인하십시오.

  • +0

    는 동의하지만이 두 사이트에 공통 인증 기법을 적용해야한다고 생각하면됩니다. 코드와 리소스를 복제하지 않고 어떻게이 작업을 수행 할 수 있습니까? 이 두 사이트는 자체 데이터베이스를 사용할 수 있으며 인증 사용자 테이블은 다른 데이터베이스로 간주됩니다. 이를 달성 할 수있는 방법이 있습니까? 조언을주십시오 – Joseph

    +0

    LDAP 데이터베이스를 사용하여 인증 할 수 있습니다. 각 프로젝트의 settings.py 파일에서 응용 프로그램 데이터에 대한 데이터베이스를 설정할 수 있습니다. 이 경우 둘 다 인증/사용자 데이터에 사용되지 않습니다. –

    관련 문제