Apache 2 + mod_wsgi + WSGIScriptAlias

Momentan forsche ich, ob Python und Django sind fit für ein Projekt, dass ich machen werde (so weit es gut aussieht). Als einen test, ich will python läuft auf einem tatsächlichen server (apache2 auf ubuntu), mit mod_wsgi, aber ich kann einfach nicht damit es funktioniert. Hier ist meine httpd.conf (unter /etc/apache2/httpd.conf):

WSGIScriptAlias /test/tc-test/ /var/www/stage/hello/tc-test/django.wsgi
WSGIPythonPath /var/www/stage/test/tc-test/

<Directory /var/www/stage/test/tc-test>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

Mein django.wsgi sieht wie folgt aus:

import os
import sys

sys.path.append('/var/www/stage/test/tc-test')

os_environment['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()

Den url für das Verzeichnis wird http://stage.website.com/test/tc-test

Seltsam genug, wenn ich einen Neustart des apache-server, ich bekomme immer 500 internal server Fehler. Nicht nur für das Unterverzeichnis, aber für alle anderen Unterverzeichnisse auf dem server. Ich schaute auf die apache-error-log, aber aus irgendeinem Grund kein Fehler wird protokolliert. Ich schaffte es, verengen die Schuldigen WSGIScriptAlias und WSGIPythonPath: wenn ich entfernen Sie die beiden von Ihnen, die 500 interner server-Fehler verschwinden, und wenn ich einer von Ihnen, erscheinen Sie wieder. Ich habe bestätigt, dass mod_wsgi funktioniert wie es sollte, und es ist wahrscheinlich etwas sehr einfaches, ich bin auf der Suche über. Ich kann einfach nicht herausfinden, was. Jede Hilfe zu diesem?

Für Vorspeisen Sie verweisen django.wsgi und wsgi.py... welche ist es?
hmm, guter Punkt. Die aktuelle Datei die ich benutze, ist django.wsgi
Sie müssen auch sicherstellen apache mit den entsprechenden Berechtigungen. Fragen Sie Ihren apache-error-log.
Okay, ich bin ein idiot. Ich habe in der Tat geändert, dass ein Teil, und die internen server-Fehler sind Weg. Anscheinend ist mein Erster Versuch, diese Arbeit zu machen, scheiterten, nach denen ich versucht habe eine andere Anleitung, die hatte einen anderen Namen von "django.wsgi", und ich vergaß zu ändern, dass ein Teil auch. Vielen Dank für die Hilfe.
Keine Sorge, wählen Sie Django 😀

InformationsquelleAutor psgels | 2012-02-06

Schreibe einen Kommentar