2013-02-19 3 views
0

J'ai des difficultés à faire fonctionner mod_wsgi en mode démon sur mon installation Debian/Apache/Python2.6/Django. Dans mon fichier de configuration d'hôte virtuel, j'aiLe mode démon Apache/mod_wsgi ne fonctionne pas

<VirtualHost *:80> 

    ServerName mysite.com 

    WSGIDaemonProcess mysite.com processes=2 threads=15 
    WSGIProcessGroup mysite.com 

    WSGIScriptAlias//path/to/mysite/wsgi/django.wsgi 

    <Directory /path/to/mysite/wsgi/> 
    Order deny,allow 
    Allow from all 
    </Directory> 

</VirtualHost> 

mis en place. Pour tester l'activation du mode démon, j'utilise ce script wsgi:

import sys 
import os 

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings') 

def application(environ, start_response): 
    print >> sys.stderr, 'mod_wsgi.process_group = %s' % repr(environ['mod_wsgi.process_group']) 

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

    return _application(environ, start_response) 

et le fichier journal résultant dit toujours:

mod_wsgi.process_group = '' 

qui, accroding à la documentation, indique que le mode démon n'est pas utilisé . J'ai vérifié mon installation plusieurs fois, les versions d'Apache, mod_wsgi et Python correspondent et ma configuration est correcte selon tous les HOWTO que j'ai lus. Que pourrais-je manquer?


Edit: Pour votre information, mon application fonctionne très bien en mode embarqué, je voulais juste passer en mode démon et a trouvé qu'il n'est pas activé à l'aide du script wsgi ci-dessus.

Répondre

1

Il s'est avéré qu'un lien symbolique n'était pas défini correctement pour que mes modifications de configuration ne soient jamais chargées dans Apache. Désolé de perdre votre temps, je pensais avoir tout vérifié avant de poster. Toutes vos suppositions sont vraies et j'ai redémarré Apache à plusieurs reprises en essayant de déboguer ceci.

0

La ligne mod_wsgi.process_group = '' implique que vous travaillez toujours en mode intégré (comme vous le notez). mod_wsgi le mode démon ne fonctionnera pas sur Apache 1.x donc je suppose que vous exécutez 2.x (comme vous l'avez également noté).

Vous pouvez essayer de régler la apache

LogLevel info 

pour qu'il y ait plus d'informations utiles dans le fichier journal. Je suppose aussi que vous avez forcé apache redémarrer

# /etc/init.d/apache2 restart 

cela ne devrait pas être nécessaire en mode démon tant, mais si vous étiez en mode intégré vous sera préalablement nécessaire de recharger vos fichiers de configuration.

+0

Je définis également 'LogLevel info', sans informations supplémentaires dans les fichiers journaux. Malheureusement, je suis toujours coincé sur ce problème ... –

Questions connexes