AWS无服务器和React问题:有一个我需要构建的React应用,然后加载到s3存储桶中以进行静态托管

问题描述 投票:0回答:1

我希望在一个S3存储桶中为人们提供多个站点。我知道可以使用Cloudfront和HAProxy将人员引导到S3存储桶上的特定位置。我的问题是,即时构建React应用,然后将“ build”文件夹发送到S3的最佳方法是什么?

这甚至可能吗?我认为,鉴于资源,这更多是一种有效的方法。我需要设置自己的服务器还是使用Lambda等实现一些无服务器的方式?

reactjs amazon-web-services amazon-s3 aws-lambda
1个回答
0
投票

@@ bearsworth使用名为AWS Amplify的工具很容易在S3上托管React应用程序。需要澄清的一件事是,为什么要在同一个存储桶中托管多个站点?使用amplify,您可以开始:

npx create-react-app myappname

然后使用以下命令安装放大及其反应工具:

npm i -s aws-amplify aws-amplify-react

下一次运行(遵循提示):

放大配置

其次:

amplify init然后转到AWS控制台并搜索Amplify。您会看到类似这样的屏幕the blue area 1 of 5 steps completed,表示充分利用Amplify控制台,完成第二步以链接您的域名。单击添加具有免费SSL证书的自定义域链接。它看起来像这样connect your domain您也可以将分支连接到您喜欢的代码存储库,然后开始比赛!!!您的要求的缺点是每个站点都在separate S3存储桶中。 Amplify是一个无服务器平台,因此需要零EC2实例。走这条路线每月可为我节省数百美元的基础设施成本。 Amplify平台减轻了配置实例,Kubernetes集群,DNS配置,API开发,身份验证流和存储检索的压力。对于全栈的React开发人员,我觉得这是一个很好的资源。可以尝试的一些功能包括:放大添加存储空间放大添加API放大添加托管放大添加身份验证

快乐编码

© www.soinside.com 2019 - 2024. All rights reserved.