如何使用nginx或其他更好的方法在ec2服务器上部署两个不同的react应用程序

mkh04yzy  于 2023-03-17  发布在  Nginx
关注(0)|答案(1)|浏览(150)

我有两个react应用程序,一个用于客户端,一个用于管理员,我想要的是将这两个应用程序部署在一个ec2服务器上。我没有域名,所以我想使用ec2服务器的公共IP地址作为我的域。我尝试了许多方法来部署使用nginx,但没有一个工作。我设法部署客户端应用程序成功,但管理员是不工作。我希望管理应用程序是客户端应用程序的子域,因此在我的示例中,假设ec2服务器的公共IP地址为12.12.12.12,则管理URL应为admin.12.12.12.12。这两个应用程序都使用react-router,并具有多个页面,以防需要了解静态文件位置。我尝试在/etc/nginx/sites-available/文件夹中为客户端和管理员创建两个不同的配置文件,并将它们链接起来。仅供参考,我使用pm2部署节点js服务器,它运行良好。
客户端配置

server {
    listen 80;
    server_name 12.12.12.12;

    root /var/www/client/build;
    index index.html;

    location / {
    try_files $uri $uri/ /index.html;

    }

    location /api {
        proxy_pass http://localhost:5000;
        proxy_redirect http://localhost:5000 http://$host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
    }
}

管理配置文件

server {
    listen 80;
    server_name admin.12.12.12.12;

    root /var/www/admin/build;
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }

}
yqyhoc1h

yqyhoc1h1#

购买一个域名并用域名替换IP地址是最简单的解决方案。

相关问题