2012-04-03 2 views
5

Ho installato correttamente un'applicazione Django utilizzando virtualenv su Ubuntu e Apache 2, utilizzando la direttiva WSGIPythonHome che punta alla mia posizione virtualenv. Ora ho bisogno di creare un'applicazione Django separata, che verrà eseguita su Apache su una porta diversa sullo stesso server Ubuntu. Mi chiedo se c'è un modo per fare in modo che Apache esegua più istanze WSGIPythonHome? Attualmente con WSGIPythonHome essere impostato su uno virtualenv radice, c'è un problema con le importazioni al secondo Django app ...Più applicazioni Django che utilizzano virtualenv su Apache 2 su Ubuntu 11

risposta

0

Si dovrebbe fare questo con separata virtual hosts in Apache. Ognuno può ascoltare una particolare porta e può avere le sue direttive WSGI separate.

+0

Ho l'installazione di host virtuali per ciascuna delle app. Dove nella configurazione dell'host virtuale aggiungo un WSGI. Qual è la sintassi. Ho provato una rapida ricerca su google su host virtuali e WSGI prima di pubblicare la domanda ma non ho trovato nulla di utile –

+0

import os, sys sito di importazione site.addsitedir ('/ home/deploy/virtualenv/costs/lib/python2.6/site- pacchetti ') sys.path.append ('/opt/spese/corrente/src ') os.environ [' DJANGO_SETTINGS_MODULE '] =' spese.settings ' import django.core.handlers.wsgi application = django. core.handlers.wsgi.WSGIHandler() –

+0

sopra è la mia direttiva wsgi, ne ho due, uno per ogni app ... ma non vedo dove, dove posso aggiungere una direttiva WSGIPythonHome –

2

Il modo migliore per farlo, ho scoperto circa un anno fa, è di utilizzare WSGI come demone e impostare il percorso python nella direttiva daemon. L'esempio è sotto

<VirtualHost *:80> 
    ServerName yourhost.com 

    <Directory /> 
     Order deny,allow 
     #Require all granted 
    </Directory> 

    #Alias /static /opt/yourhost/static 
    WSGIScriptAlias//opt/yourhost/wsgi.py 

    WSGIApplicationGroup %{GLOBAL} 

    WSGIDaemonProcess yourhost.com python-path=/opt/yourhost:/opt/yourhost/venv/lib/python2.7/site-packages processes=2 threads=15 display-name=%{GROUP} 
    WSGIProcessGroup yourhost.com 
</VirtualHost> 
WSGISocketPrefix /var/run/wsgi