【问题标题】:How to Deploy two websites on one domain?如何在一个域上部署两个网站?
【发布时间】:2014-08-22 21:32:33
【问题描述】:

我们在 ubuntu 上使用前端技术作为 php 和 web 服务器作为 nginx。我们的应用程序有一个公司注册页面。一旦新公司注册,我们就会为公司创建一个独特的子域。 http://localserver.in/registerhttp://company.localserver.in/login

我们已经完成了这些设置,我们可以通过公司子域访问服务器。

现在我们正朝着部署的方向发展,我们在 git 上提出了 3 个不同的分支。质量保证、发布和生产。我们决定只在一个 AWS 实例上保留 QA 和 Release 分支,并且还将拥有一个 DB。它就像 2 个代码库和 1 个 DB 方法。

现在我可以轻松购买新域并使用 AWS 实例进行设置,但这会增加管理不同配置设置的开销。

当我们为每家公司创建子域时,我们不能将两个不同的代码库指向不同的子域。

在这种情况下,真的可以在一个域上处理 QA 和 Release 分支吗?或者我们需要购买两个不同的域名?

【问题讨论】:

    标签: ubuntu amazon-web-services nginx web-deployment webdeploy


    【解决方案1】:

    恕我直言,这只是一个 nginx 配置问题——如果我理解正确的话。

    您的 nginx 配置看起来如何?像这样的东西不行吗?

    server {
        root /www/qa;
        server_name company1.server.in;
        include config;
    }
    server {
        root /www/release;
        server_name company2.server.in;
        include config;
    }
    server {
        root /www/qa;
        server_name company3.server.in;
        include config;
    }
    ...
    

    【讨论】:

    • 这不是我的意思。我已经为 QA.server.in (/www/qa) 和 release.server.in (/www/release) 配置了 nginx 设置。这两个是不同的代码库。两者都有注册页面。一旦任何公司注册,我们就会为公司创建子域。例如,如果公司 ABC 在 qa.server.in 上注册,公司 url 将变为 abc.server.in。现在我需要一个像 abc.qa.server.in 或 abc.release.server.in 这样的结构。希望能给大家更多的理解。
    【解决方案2】:

    完成。通过三个虚拟主机配置和代码中的位更改来解决。

    基本上在你的 web 目录下设置 2 个 repos。 www/qa 和 www/release。为 qa.server.in 和 release.server.in 添加 nginx 配置。对于 *.server.in 子域,您还需要一个。

    现在当我访问 qa.server.in 指向 www/qa 的代码库时 当我访问 release.server.in 指向 www/release 的代码库时

    两个代码库都有注册和登录页面。让我们考虑一下我有公司注册名称客户。所以公司主页将是 company.server.in。

    一旦公司登录到 qa.server.in 将被重定向到 client.server.in/qa。发布也一样。

    是的!我做到了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-16
      • 1970-01-01
      • 2012-09-07
      • 2013-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多