0

我想在 beta 测试中向我的客户公开一个 django 应用程序。我们的 SSL 证书仅适用于http://www.domain.com/(无子域)。所以我想映射:

http://192.168.0.9:8080/ 到http://www.domain.com/beta/

我已将此添加到我的 nginx.conf

   location /beta {
            rewrite            ^([^.]*[^/])$ $1/       permanent;
   }

   location /beta / {
            proxy_set_header        X-Url-Prefix            http://www.domain.com/beta/;
            proxy_set_header        X-Real-IP               $remote_addr;
            proxy_set_header        Host                    $host;
            proxy_pass              http:// 192.168.0.9:8080/;
   }

第一页看起来不错,但所有链接都不起作用。链接由 {% url ... %} 模板标签创建。

PS:http://和IP之间的空间-> stackoverflow拒绝保存我的问题,无法访问

4

1 回答 1

1

Django 需要知道它不在域的根目录中,默认情况下所有内容都与 / 相关。有多种方法可以处理此问题,但最简单的可能是将“www.domain.com/beta”添加到默认 SITE_ID 下的站点框架(您必须在 INSTALLED_APPS 中添加它)。在管理界面中公开其模型并使用正确的后缀进行设置。

查看django 站点框架以将您的 URL 根添加到 FQDN。

于 2012-08-04T22:29:26.867 回答