我希望在一个S3存储桶中为人们提供多个站点。我知道可以使用Cloudfront和HAProxy将人员引导到S3存储桶上的特定位置。我的问题是,即时构建React应用,然后将“ build”文件夹发送到S3的最佳方法是什么?
这甚至可能吗?我认为,鉴于资源,这更多是一种有效的方法。我需要设置自己的服务器还是使用Lambda等实现一些无服务器的方式?
@@ bearsworth使用名为AWS Amplify的工具很容易在S3上托管React应用程序。需要澄清的一件事是,为什么要在同一个存储桶中托管多个站点?使用amplify,您可以开始:
npx create-react-app myappname
然后使用以下命令安装放大及其反应工具:
npm i -s aws-amplify aws-amplify-react
下一次运行(遵循提示):
放大配置
其次:
amplify init然后转到AWS控制台并搜索Amplify。您会看到类似这样的屏幕,表示充分利用Amplify控制台,完成第二步以链接您的域名。单击添加具有免费SSL证书的自定义域链接。它看起来像这样您也可以将分支连接到您喜欢的代码存储库,然后开始比赛!!!您的要求的缺点是每个站点都在separate S3存储桶中。 Amplify是一个无服务器平台,因此需要零EC2实例。走这条路线每月可为我节省数百美元的基础设施成本。 Amplify平台减轻了配置实例,Kubernetes集群,DNS配置,API开发,身份验证流和存储检索的压力。对于全栈的React开发人员,我觉得这是一个很好的资源。可以尝试的一些功能包括:放大添加存储空间放大添加API放大添加托管放大添加身份验证
快乐编码