2011-01-17 1 views
1

Я запускаю Django, и у меня есть сценарий php, который я хочу обслуживать в/books, который находится в каталоге/ci/home/bookSearch, но я хочу, чтобы он был псевдонимом книги, возможно ли это с помощью django? Я пробовал использовать mod_rewrite, но я получаю, что django url не обнаружил ошибку, когда я пытаюсь это сделать.Django и обслуживающий php-скрипт

Возможно ли использование статических файлов?

Спасибо!

ответ

2

Вам не нужно использовать mod_rewrite для этого, если вы используете mod_wsgi. Просто создайте псевдоним перед вашей директивой WSGIScript, и он будет работать как обычно.

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

Заказ на самом деле не важен. Директива Alias ​​всегда имеет приоритет над WSGIScriptAlias. –

1

Если вам нужен полный набор URL-адресов, обслуживаемых Django, а затем еще один URL-адрес в тех, которые обрабатываются с помощью настраиваемого PHP-скрипта, то это то, что вы настроили бы на своем веб-сервере, например Apache или nginx. Затем URL/urla/urlb и/urlc будут обрабатываться Django, а/книги - через PHP.

Вместо этого вы можете перенаправить HTTP из/книг в/ci/home/bookSearch. Таким образом, вы можете ввести пользовательский тип/книги в строку URL-адреса и прийти в нужное место, даже если это второй, более длинный URL-адрес.

Этот HTTP редирект в Django будет выглядеть следующим образом:

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

Когда он сказал местоположение, он, возможно, имел в виду путь к файловой системе, а не URL-адрес. –