2012-03-13 4 views
0

J'ai une application django utilisant un framework de sites et j'ai besoin de déployer dans un seul hôte virtuel apache. J'utilisais mod-python avec PythonInterpreter et ça fonctionnait bien. Mais mod-python est obsolète et je veux migrer vers wsgi. Mais je peux comprendre comment configurer ce scénario en utilisant wsgi. Quelqu'un peut-il m'aider? Je suppose que l'utilisation de WSGIScriptAlias ​​pour chaque site ne fonctionne pas car il fonctionne sur le même interpréteur python.django + wsgi + plusieurs sites

Quelqu'un peut-il m'aider?

+0

J'ai trouvé cette directive: WSGIApplicationGroup (http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIApplicationGroup). Je suis en train de déterminer si cela résout le problème. – msbrogli

Répondre

2

La valeur par défaut pour WSGIApplicationGroup est% {RESOURCE} qui se développe pour inclure la valeur de ServerName et le point de montage de l'application. Ainsi chaque hôte virtuel distinct serait dans un sous-interpréteur séparé par défaut.

Cela signifie que si vous avez plusieurs définitions VirtualHost avec un paramètre ServerName différent, elles seront distinctes.

En général, cependant, il serait préférable de créer un groupe de processus démon distinct pour chaque site et de déléguer chacun à un ensemble différent de processus. Ceci est fait en utilisant les directives WSGIDaemonProcess et WSGIProcessGroup. Lorsque chaque site appartient à un groupe de processus démon distinct, il est souvent préférable de définir WSGIApplicationGroup sur% {GLOBAL} afin d'utiliser l'interpréteur principal car cela évite certains problèmes avec les modules d'extension C tiers pour Python qui ne sont pas écrits afin de travailler dans les sous-interprètes.

+0

Mais le contexte de WSGIDaemonProcess est l'hôte virtuel. Comment puis-je faire cela en utilisant un seul hôte virtuel? Mes sites sont: http: // /site1/et http: // /site2 /. – msbrogli

+0

Il n'est pas limité à VirtualHost. Il peut être en dehors de VirtualHost et chaque VirtualHost a un WSGIProcessGroup qui s'y réfère. Comme je l'ai dit, vous êtes mieux avec un groupe de processus démon par site. –

+0

A travaillé très bien !! Merci! =] – msbrogli