0

我已经使用 mod_wsgi 设置了一个 Apache Web 服务器,并成功地修改了basic_projectDjangoBB 以在站点的/forum/子树下从 Apache 调用。我遇到的问题是 WSGI 应用程序接收(正确)没有/forum/前缀的 URL,但在结果页面中生成没有任何前缀的 URL。

问题示例:打开http://site/forum/DjangoBB 论坛的首页;Log In链接指向http://site/account/signin/而不是期望的http://site/forum/account/signin.

如何使 DjangoBB 应用程序生成的所有 URL 包含自定义前缀(/forum/在我的情况下)?

更新(根据要求):

其中部分httpd.conf配置项目以在 WSGI 下使用:

WSGIPythonPath /var/www/forum:/var/www/forum/xforum:/var/www/forum/venv/lib/python2.7/site-packages
WSGIScriptAlias /forum /var/www/forum/xforum/wsgi.py

<Directory /var/www/forum/xforum>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

请注意,如果不包括项目目录 ( …/forum/xforum) 及其父 ( …/forum),则 WSGI 应用程序无法正常工作。

4

1 回答 1

0

settings.py项目中,FORCE_SCRIPT_NAME应该是项目 URL 的前缀,以斜杠 ( )开头/

就我而言,它应该是:

FORCE_SCRIPT_NAME = '/forum'
于 2012-12-04T11:57:17.283 回答