Setup mit django WSGI und apache
Habe ich verkauft auf mod_wsgi und apache eher als mod_python.
Ich habe alle Teile installiert (django, apache, mod_wsgi), haben aber ein problem bereitstellen.
Bin ich auf osx 10.5 mit apache 2.2 und django 1.0b2, mod_wsgi-2.3
Meine Anwendung heißt tred.
Hier sind die relevanten Dateien:
httpd-vhosts (enthalten in der httpd-conf)
NameVirtualHost-tred:80 ServerName rot Alias /admin_media /usr/lib/python2.5/site-packages/django/contrib/admin/media Order allow,deny Von alle zulassen Alias /media /Benutzer/dmg/Sites/rot/media Order allow,deny Von alle zulassen Alias //Users/dmg/Sites/rot/ Order allow,deny Von alle zulassen WSGIScriptAlias //Users/dmg/Sites/rot/mod_wsgi-handler.wsgi WSGIDaemonProcess tred user=dmg group=Mitarbeiter Prozesse=1, threads=10 WSGIProcessGroup tred
mod_wsgi-Griff.wsgi
import sys import os sys.Pfad.append(os.Pfad.dirname(os.Pfad.abspath(__file__)) + '/..') os.environ['DJANGO_SETTINGS_MODULE'] = 'tred.Einstellungen' import django.core.Handler.wsgi application = django.core.Handler.wsgi.WSGIHandler()
Wenn ich http://tred bekomme ich ein Verzeichnis-Auflistung eher als die gerenderte Webseite. Ich denke, ich habe die tutorials richtig, aber es ist offensichtlich nicht richtig. Was kann ich tun, um diese Arbeit zu machen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was passiert, wenn Sie entfernen die
Alias /
Richtlinie?Beachten Sie, dass Alias und WSGIScriptAlias Richtlinien haben nicht die gleiche Rangfolge. Sie werden daher nicht verarbeitet werden im Datei-Bestellung, wie geschrieben. Stattdessen werden alle Alias-Direktiven erhalten Vorrang vor WSGIScriptAlias Richtlinien. Also, wäre es nicht ausgemacht haben, wenn der Alias für '/' erschien nach WSGIScriptAlias, wäre es immer noch Vorrang einnehmen.
Für zukünftige Referenz:
Es funktioniert, weil die Apache-Prozesse alias-Direktiven in der Reihenfolge und verwendet die erste übereinstimmung. Es wurde immer trifft
Alias /
, was passt alles, vorWSGIScriptAlias
.Aus der
mod_alias
- Dokumentation:versuchen Sie folgenden tutorial - http://singlas.in/5-step-tutorial-for-using-django-with-apache-and-mod_wsgi/
sind Sie versucht, host-apache /var/www/Verzeichnis und die Django-app sowohl auf root (/). Da die Alias-Direktive Vorrang vor WSGIScriptAlias, es ist die rendering-apache-Verzeichnis.
können Sie versuchen host die django-app /app. Alternativ-host /var/www/Ordner an einen anderen Speicherort wie /public