2014-07-14 4 views
0

내 제품 Ubuntu 13.04 서버에서 VirtualEnvmod-wsgi으로 사용하는 데 문제가 있습니다.Django에서 VirtualEnv + mod-wsgi를 사용하는 SyntaxError

누군가가 문제의 원인을 지적 할 수 있습니까? 나는 내 flapsta.wsgi 파일과 같이 설정 한

[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] mod_wsgi (pid=14292): Target WSGI script '/home/aaron/public_html/flapsta.com/flapsta/flapsta/flapsta.wsgi' cannot be loaded as Python module. 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] mod_wsgi (pid=14292): Exception occurred processing WSGI script '/home/aaron/public_html/flapsta.com/flapsta/flapsta/flapsta.wsgi'. 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] Traceback (most recent call last): 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] File "/home/aaron/public_html/flapsta.com/flapsta/flapsta/flapsta.wsgi", line 16, in <module> 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22]  execfile(activate_env, dict(__file__=activate_env)) 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] File "/home/.virtualenvs/flapsta/bin/activate", line 4 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22]  deactivate() { 
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22]     ^
[Mon Jul 14 14:37:09 2014] [error] [client 70.180.246.22] SyntaxError: invalid syntax 

: 여기

내가 아래 구문 오류가 무엇입니까 역 추적입니다

import os 
import sys 
import site 

# Add the site-packages of the chosen virtualenv to work with 
site.addsitedir('/home/.virtualenvs/flapsta/lib/python2.7/site-packages') 

# Add the app directories to the PYTHONPATH 
sys.path.append('/home/aaron/public_html/flapsta.com') 
sys.path.append('/home/aaron/public_html/flapsta.com/flapsta') 

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

# Activate the virtualenv 
activate_env=os.path.expanduser('/home/.virtualenvs/flapsta/bin/activate') 
execfile(activate_env, dict(__file__=activate_env)) 

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

def application(environ, start_response): 
    # DB 
    # .... envirtonment variables .... 

    return _application(environ, start_response) 

나는이 줄을 주석 때 :

execfile(activate_env, dict(__file__=activate_env)) 

이제 더 이상 virtualenv을 활성화하지 않아 사이트를 잘로드 할 수 있습니다. 그러나 나는 의존성이 다른 여러 사이트를 호스팅하는 데 분명히 virtualenv을 사용할 수 없습니다.

알려진 문제입니까, 아니면 다른 사람이 지적 할 수있는 구성이 누락 되었습니까?

나는 실행 해요 : 사전에

Django 1.5.4 
viritualenv 1.11.1 
Apache2.2 
Ubuntu 13.04 
Python 2.7.4 

감사합니다.

+0

'virtualenv'를 사용하여 서로 다른 종속성을 가진 여러 사이트를 호스팅 할 수없는 이유는 무엇입니까? – MadPhysicist

답변

3

파이썬에서 bash 정품 인증 스크립트를 실행하려고합니다. activate_this.py Python 스크립트를 실행해야합니다.

+0

은'SyntaxError' 메시지를 고쳤지만'virtualenv'에서 내 패키지를 컴파일하면서 사이트로 가져올 수 없습니다. 나는 정상적인 설정으로'wsgi.py'를 가지고 있고'flapsta.wsgi' 만 변경했습니다. 'wsgi.py'에도 몇 가지 설정을해야합니까? 감사. –