Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs AWS无服务器和React问题:我需要构建一个React应用程序,然后加载到s3存储桶中进行静态托管_Reactjs_Amazon Web Services_Amazon S3_Aws Lambda - Fatal编程技术网

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

Reactjs AWS无服务器和React问题:我需要构建一个React应用程序,然后加载到s3存储桶中进行静态托管,reactjs,amazon-web-services,amazon-s3,aws-lambda,Reactjs,Amazon Web Services,Amazon S3,Aws Lambda,我正在寻找主机上的一个S3桶的人几个网站。我知道可以使用Cloudfront和HAProxy将人们引导到S3存储桶上的特定位置。我的问题是,动态构建react应用程序,然后将“build”文件夹发送到S3的最佳方法是什么 这可能吗?我想这更多的是考虑到资源的情况下,一种有效的方法。我是否需要设置自己的服务器,或者是否存在使用Lambda等的无服务器方法。@bearsworth使用名为的工具很容易在S3上托管React应用程序。需要澄清的一点是,为什么您希望从同一个存储桶中托管多个站点? 使用a

我正在寻找主机上的一个S3桶的人几个网站。我知道可以使用Cloudfront和HAProxy将人们引导到S3存储桶上的特定位置。我的问题是,动态构建react应用程序,然后将“build”文件夹发送到S3的最佳方法是什么


这可能吗?我想这更多的是考虑到资源的情况下,一种有效的方法。我是否需要设置自己的服务器,或者是否存在使用Lambda等的无服务器方法。

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

npx创建反应应用程序myappname

然后使用以下工具安装amplify及其react工具:

npm i-s aws放大aws放大反应

下一次运行(按照提示操作):

放大配置

其次是:

放大初始化
然后转到AWS控制台并搜索Amplify。您将看到这样一个屏幕

其中显示的是充分利用放大控制台完成链接域名的第二步。单击“添加具有免费SSL证书的自定义域”链接。它应该是这样的

您还可以将一个分支连接到您最喜欢的代码库,然后您就可以开始比赛了!!!
您的请求的缺点是每个站点都位于单独的S3存储桶中。Amplify是一个无服务器平台,因此不需要EC2实例。走这条路线每月为我节省了数百美元的基础设施成本。Amplify平台消除了资源调配实例、Kubernetes群集、DNS配置、API开发、身份验证流和存储检索的压力。对于全栈React开发者,我觉得这是一个很好的资源。
要尝试的一些功能包括:
放大添加存储
放大添加API
放大添加主机
放大添加验证


快乐编码

感谢您的回复。我的主要应用程序实际上使用的是AWS Amplify,所以我知道这个框架是如何工作的。我唯一的问题是,正如您所提到的那样,使用它会使站点在每个站点上使用一个单独的S3存储桶,并且很可能是一个单独的cloudfront发行版。下面是一篇文章,介绍我试图动态托管站点的操作:。我的问题是,我希望通过react网站做到这一点。我明白你的观点。为什么在多个存储桶中托管相同的内容。您的方法可以节省资金,如果代码像看上去一样简单,甚至可以简化您的存储需求。我会关注这篇文章,因为我也很好奇。好问题。更多的澄清是我试图设置的:。我希望有人能回答我是否可以在服务器上“构建”react应用程序,然后将react生成的“构建”文件夹导出到s3存储桶中。如果有人做过类似的实现,或者考虑过如何实现。我唯一的抱怨是,我可能正在使用react路由器,这可能会导致s3存储桶出现问题。