【发布时间】:2021-01-20 01:22:36
【问题描述】:
详细地说,我们有一台服务器来运行 django。问题是在我们将更改推送到生产环境之前,我们需要建立最终用户可以测试的“公共”测试服务器。
现在,通常我们会有production.domain.com 和testing.domain.com 并分别运行它们。但是,由于我们无法控制的情况,我们只能访问一个域。我们暂时称它为program.domain.com。
有没有办法设置两个完全独立的 django 实例(也就是我们不希望生产版本的管理员能够访问演示数据,反之亦然),我们有 program.domain.com/production 和 program.domain.com/development 环境?
我试图查看Djangos "sites"-framework,但据我所知,它所能做的只是分离域,而不是路径,并且它的两个“站点”都能够访问相同的数据。
但是,正如我所说,我们希望将测试数据和生产数据分开。然而,我们想让我们的最终用户测试人员访问他们可以修改的版本,保持生产、公共测试和本地开发(运行服务器命令)版本的分离。
【问题讨论】:
-
您可以在不同的端口上运行两个独立的 Django 进程,然后在其前面有一个反向代理 Web 服务器,它侦听通常的端口 80/443 并将请求代理到一个或另一个 Django 实例/port 取决于请求的路径。
-
这实际上是一个更好的方法。
标签: django