Ubuntu 如何在一个域上部署两个网站?

Ubuntu 如何在一个域上部署两个网站?,ubuntu,amazon-web-services,nginx,web-deployment,webdeploy,Ubuntu,Amazon Web Services,Nginx,Web Deployment,Webdeploy,我们在ubuntu上使用前端技术作为php,web服务器作为nginx。我们的申请有一个公司注册页面。一旦新公司注册,我们将为公司创建一个独特的子域。和 我们已经完成了这些设置,在这些设置中,我们可以访问带有公司子域的服务器 现在我们正朝着部署的方向前进,我们在git上开发了3个不同的分支。质量保证、发布和生产。我们已经决定只在一个AWS实例上保留QA和Release分支,并且还将有一个DB。它类似于2个代码基和1 DB的方法 现在,我可以轻松地购买新域并使用AWS实例进行设置,但这将增加管理不

我们在ubuntu上使用前端技术作为php,web服务器作为nginx。我们的申请有一个公司注册页面。一旦新公司注册,我们将为公司创建一个独特的子域。和

我们已经完成了这些设置,在这些设置中,我们可以访问带有公司子域的服务器

现在我们正朝着部署的方向前进,我们在git上开发了3个不同的分支。质量保证、发布和生产。我们已经决定只在一个AWS实例上保留QA和Release分支,并且还将有一个DB。它类似于2个代码基和1 DB的方法

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

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


在这个场景中,真的有可能在一个域上处理QA和发布分支吗?或者我们需要购买两个不同的域名

IMHO这只是一个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;
}
...

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

基本上在您的web目录下设置2个repo。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。发布时也一样


是的!我做到了

这不是我的意思。我已经为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这样的结构。我希望它能给你更多的理解。