【发布时间】:2011-01-17 04:37:57
【问题描述】:
我正在运行 Django,并且我有一个我想在 /books 上服务的 php 脚本,它位于 /ci/home/bookSearch 的位置,但我希望它在书本上具有别名,这可能吗django?我尝试使用 mod_rewrite,但尝试执行此操作时出现 django url not found 错误。
静态文件可以吗?
谢谢!
【问题讨论】:
标签: php django mod-rewrite django-urls
我正在运行 Django,并且我有一个我想在 /books 上服务的 php 脚本,它位于 /ci/home/bookSearch 的位置,但我希望它在书本上具有别名,这可能吗django?我尝试使用 mod_rewrite,但尝试执行此操作时出现 django url not found 错误。
静态文件可以吗?
谢谢!
【问题讨论】:
标签: php django mod-rewrite django-urls
如果您使用 mod_wsgi,则不需要为此使用 mod_rewrite。只需在 WSGIScript 指令之前创建一个别名,它就会正常工作。
Alias /books /ci/home/bookSearch
WSGIScriptAlias ...
【讨论】:
如果您想要由 Django 提供的一整套 URL,然后在这些 URL 中使用另一个由自定义 PHP 脚本处理的 URL,那么您可以在 Web 服务器中设置这些 URL,例如 Apache 或 nginx。然后 URL /urla /urlb 和 /urlc 将由 Django 处理,而 /books 将通过 PHP。
您可能会考虑从 /books 到 /ci/home/bookSearch 的 HTTP 重定向。这样您就可以让用户在 URL 栏中键入 /books 并到达正确的位置,即使它是第二个更长的 URL。
Django 中的 HTTP 重定向如下:
# urls.py
...
url(r'^books$', 'django.views.generic.simple.redirect_to',
{'url': '/ci/home/bookSearch'}),
...
【讨论】: