2011-01-17 11 views
1

Ich renne Django, und ich habe ein PHP-Skript, das ich an/Bücher dienen soll, die an der Stelle/ci/home/bookSearch ist, aber ich möchte es aliased bei Bücher, ist das mit Django möglich? Ich habe versucht, mit mod_rewrite, aber ich bekomme die Django-URL nicht gefunden Fehler, wenn ich es versuche.Django und Serving ein PHP-Skript

Ist es mit statischen Dateien möglich?

Danke!

Antwort

2

Sie brauchen nicht mod_rewrite dafür zu verwenden, wenn Sie mod_wsgi verwenden sind. Erstellen Sie einfach einen Alias ​​vor Ihrer WSGIScript-Direktive und es funktioniert wie gewohnt.

Alias /books /ci/home/bookSearch 
WSGIScriptAlias ... 
+0

Die Reihenfolge ist eigentlich nicht wichtig. Die Alias-Direktive hat immer Vorrang vor WSGIScriptAlias. –

1

Wenn Sie möchten, dass eine ganze Reihe von URLs von Django geliefert wird und dann eine andere URL innerhalb eines benutzerdefinierten PHP-Skripts, dann würden Sie dies auf Ihrem Webserver einrichten, wie Apache oder nginx. Dann würden die URLs/urla/urlb und/urlc von Django behandelt, und/books wären via PHP.

Sie könnten stattdessen eine HTTP-Weiterleitung von/books nach/ci/home/bookSearch in Betracht ziehen. Auf diese Weise können Sie den Benutzer/Bücher in die URL-Leiste eingeben und am richtigen Ort ankommen, auch wenn es die zweite, längere URL ist.

Diese HTTP-Umleitung in Django würde wie folgt aussehen:

# urls.py 
... 
url(r'^books$', 'django.views.generic.simple.redirect_to', 
    {'url': '/ci/home/bookSearch'}), 
... 
+0

Als er sagte, stand er möglicherweise Dateisystempfad und nicht URL-Standort. –