2011-11-17 5 views
0

아치 리눅스를 실행하는 컴퓨터에서 mod_wsgi와 함께 Apache 2.2.21을 사용하고 있습니다. django를 https 기능과 함께 사용하고 싶습니다. 나는 python2.7과 python 3.2도 설치했다. 프로젝트의 django.wsdi 파일은 아래와 같습니다. https로 샘플 파일에 액세스하려고하지만 django를 사용하지 않고 정상적으로 작동합니다. django 프로젝트에서 https를 사용하여 파일을 가져 오려고하면 다음과 같은 오류가 발생합니다. - ImportError: No module named django.core.handlers.wsgidjango와 아파치를 사용하는 https를 사용합니다.

/usr/lib/httpd/modules로 이동하고 ldd mod_wsgi.so를 실행하면 다음과 같은 메시지가 나타납니다 파이썬 3.2에 대해 컴파일됩니다. 하지만 django는 python 3.2 만 지원합니다 2.7.

이 문제를 해결하려면 어떻게해야합니까?

모든 도움말/포인터에 감사드립니다.

$ldd mod_wsg.so 
    linux-vdso.so.1 => (0x00007fff769e1000) 
    libpython3.2mu.so.1.0 => /usr/lib/libpython3.2mu.so.1.0 (0x00007f82a3188000) 
    libpthread.so.0 => /lib/libpthread.so.0 (0x00007f82a2f6b000) 
    libdl.so.2 => /lib/libdl.so.2 (0x00007f82a2d66000) 
    libutil.so.1 => /lib/libutil.so.1 (0x00007f82a2b63000) 
    libm.so.6 => /lib/libm.so.6 (0x00007f82a28e1000) 
    libc.so.6 => /lib/libc.so.6 (0x00007f82a2559000) 
    /lib/ld-linux-x86-64.so.2 (0x00007f82a37e5000) 

django.wsdi 파일 : 수입 OS 수입 SYS

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' 

import django.core.handlers.wsgi 
application = django.core.handlers.wsgi.WSGIHandler() 

path = '/to/mysite' 
if path not in sys.path: 
    sys.path.append(path) 

답변

0

파이썬 2.7에 대해 컴파일 mod_wsgi에의 버전을 설치합니다. mod_wsgi 모듈은 한 번에 하나의 Python 버전에만 바인딩 될 수 있으며, 컴파일 타임에만 설정할 수있는 대신 동적으로 변경할 수 없습니다.

실제로 다른 시간에 다른 Python 버전을 사용하려면 단일 Apache/mod_wsgi 인스턴스를 사용할 수 없습니다.

관련 문제