Le programme d'installation de django avec WSGI et apache
J'ai été vendu sur mod_wsgi et apache plutôt que de mod_python.
J'ai toutes les pièces installées (django, apache, mod_wsgi), mais se sont heurtés à un problème de déploiement.
Je suis sur osx 10.5 avec apache 2.2 et django 1.0b2, mod_wsgi-2.3
Mon application est appelée tred.
Voici les fichiers:
httpd-vhosts (inclus dans httpd-conf)
NameVirtualHost tred:80 ServerName tred Alias /admin_media /usr/lib/python2.5/site-packages/django/contrib/admin/media Order allow,deny Permettre à tous Alias /media /Utilisateurs/dmg/Sites/tred/médias Order allow,deny Permettre à tous Alias //Users/dmg/Sites/tred/ Order allow,deny Permettre à tous WSGIScriptAlias //Users/dmg/Sites/tred/mod_wsgi de gestionnaire.wsgi WSGIDaemonProcess tred utilisateur=dmg groupe=personnel de processus=1 fils=10 WSGIProcessGroup tred
mod_wsgi-manche.wsgi
import sys import os sys.chemin d'accès.append(os.chemin d'accès.dirname(os.chemin d'accès.abspath(__file__)) + '/..') os.environ['DJANGO_SETTINGS_MODULE'] = 'tred.les paramètres" import django.de base.les gestionnaires.wsgi application = django.de base.les gestionnaires.wsgi.WSGIHandler()
Quand je vais à http://tred - je obtenir une liste de répertoires plutôt que le rendu du site. Je pense que j'ai suivi les tutoriels correctement, mais il n'est évidemment pas la droite. Que puis-je faire pour faire ce travail?
OriginalL'auteur Hyposaurus | 2008-08-31
Vous devez vous connecter pour publier un commentaire.
Ce qui se passe si vous supprimez le
Alias /
directive?OriginalL'auteur John Millikin
Noter que les Alias et WSGIScriptAlias directives n'ont pas la même priorité. Ainsi, ils ne seront pas traitées dans le fichier de commande écrite. Au lieu de cela, tous les Alias directives obtenir la priorité sur WSGIScriptAlias directives. Ainsi, il n'aurait pas compté si l'Alias pour " /" est apparu après WSGIScriptAlias, il aurait encore pris le dessus.
OriginalL'auteur Graham Dumpleton
Pour référence future:
Cela fonctionne parce que le processus Apache alias directives dans l'ordre, et utilise le premier match. Il était toujours en train de frapper
Alias /
, qui va correspondre à quoi que ce soit, avantWSGIScriptAlias
.De la
mod_alias
de la documentation:OriginalL'auteur John Millikin
essayez de suivre ce tutoriel - http://singlas.in/5-step-tutorial-for-using-django-with-apache-and-mod_wsgi/
vous essayez d'héberger apache /var/www/dossier et le Django app à la fois à la racine (/). Depuis la directive Alias l'emporte sur WSGIScriptAlias, il est rendu répertoire d'apache.
vous pouvez essayer d'accueillir le django app /app. Sinon accueillir le /var/www/dossier à un autre endroit comme /public
OriginalL'auteur Shashank Singla