nginx 在AWS上部署项目

cnwbcb6i  于 2023-06-28  发布在  Nginx
关注(0)|答案(1)|浏览(195)

我是AWS的新手,在AWS上部署项目时遇到了一个问题。
情况是这样的:
我开发了一个网站,这个网站有几个域,如www.xxxx.com,user.xxxx.com,file.xxxx.com。我真的没有注册这些域名。因此,在开发过程中,我修改了本地桌面上的主机文件,并使用Nginx帮助我将这些域Map到其他后端服务。

upstream uidevserver{
    server 127.0.0.1:8602 weight=10;
    } 

    server {
        listen       80;
        server_name  teacher.xxxx.cn;
        ssi on;
        ssi_silent_errors on;
        location / {
            proxy_pass   http://uidevserver;
        }

        location /api/ {
                proxy_pass http://gatewayserver/;
        }     
   }

    server {
        listen       80;
        server_name  ucenter.xxxx.cn;
        ssi on;
        ssi_silent_errors on;
        location / {
            alias   D:/project/xc-ui-pc-static-portal/ucenter/;
            index  index.html index.htm;
        }
        location /include {
            proxy_pass   http://127.0.0.1;
        }
        location /img/ {
            proxy_pass   http://127.0.0.1/static/img/;
        }
        location /api/ {
                proxy_pass http://gatewayserver/;
        } 
    
   }

现在我正在尝试在AWS上部署这个网站,现在问题存在。因为我没有注册这些域名。我只能获得Amazon提供的弹性IP。我可以在EC2示例上部署一个Nginx,并将IPMap到我的一个域,但其他域呢?
顺便说一句,我不想使用NAT工具。

huwehgph

huwehgph1#

您可以通过创建基于路径的路由来实现这一点。
你可以把你的主网站在www.mywebsite.com,然后如果你想有file.mywebsite.comuser.mywebsite.com;你可以在你的nginx config中创建路径库服务器块,它将从以下位置为网站提供服务:
file.mywebsite.com --------> www.mywebsite.com/file
user.mywebsite.com --------> www.mywebsite.com/user
这样,它将为您的目的与单一的IP。

相关问题