Django Apache重定向问题

Django Apache重定向问题,django,apache,redirect,mod-wsgi,Django,Apache,Redirect,Mod Wsgi,我正在使用mod_wsgi配置我的Django项目以在Apache上运行。我试图在apache上的“cflow”目录下运行Django,但在重定向方面遇到了问题 我的apache配置如下所示: ... WSGIScriptAlias /cflow "C:\Program Files\Apache Software Foundation\Apache2.2\wsgi\django.wsgi" <Directory "C:\Program Files\Apache Software Found

我正在使用mod_wsgi配置我的Django项目以在Apache上运行。我试图在apache上的“cflow”目录下运行Django,但在重定向方面遇到了问题

我的apache配置如下所示:

...
WSGIScriptAlias /cflow "C:\Program Files\Apache Software Foundation\Apache2.2\wsgi\django.wsgi"
<Directory "C:\Program Files\Apache Software Foundation\Apache2.2\wsgi">
    Order allow,deny
    Allow from all
</Directory>
<Directory "C:\Projects\myproject\src">
    Order allow,deny
    Allow from all
</Directory>
。。。
WSGIScriptAlias/cflow“C:\Program Files\Apache软件基金会\Apache2.2\wsgi\django.wsgi”
命令允许,拒绝
通融
命令允许,拒绝
通融
我遇到的问题是,如果用户未登录,/cflow/somepage.html的请求将被重新发送到/accounts/login?next=/cflow/somepage.html。这个新地址不在django根目录(cflow)之下,因此apache会以404NotFound作为响应

我的问题是如何将Django重定向映射到apache上的应用程序根目录下?也就是说,我怎样才能使/accounts/。。。页面是否改为/cflow/accounts/

谢谢您的帮助。

要尝试的内容:

  • 将当前域更改为中的“yourdomain.tld/cflow”。使用django admin或dumpdata/loaddata manage.py命令很容易做到

  • 看起来您的站点正在使用decorator。在这种情况下,您可以添加到:

    LOGIN_URL='/cflow/accounts/LOGIN/'


  • 谢谢我希望找到一个对Django应用程序透明的解决方案。我希望能够在一个地址/服务器上测试站点,并在另一个地址/服务器上部署,而无需任何其他配置。不过,我将研究站点框架。谢谢你的提示。我想这也会更简单,但这绝对是一个正确的答案。我也遇到了同样的问题,最终找到了答案。谢谢亚历克斯!