使用CDN为S3静态网站提供node_modules服务

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

通过遵循一些教程,我在本地计算机上原型化了一个ReactJS静态应用程序(无后端)。我已经使用create-react-app来生成我的项目。下一步(这不是本教程的一部分)是将其作为静态网站上传到S3。我注意到node_modules文件夹很大(大约500 MB)。

[在阅读有关AWS中静态网站的其他教程时,实际上是使用CDN来提供一些JavaScript库(jquery),而不是与上传到S3的应用程序文件夹捆绑在一起。也可以使用node_modules完成此操作,这样我就可以避免上载该代码了?

reactjs amazon-s3 cdn
2个回答
1
投票

创建react app附带了开发和构建应用程序所必需的工具。

开发

开发时,您可以运行npm run start,它将作为网站运行该项目并在默认浏览器上将其打开。

构建

准备好部署时,请使用'npm run build',它将生成一个build目录,其中包含优化的代码,可供部署。您可以将build目录的内容复制到S3存储桶中。https://create-react-app.dev/docs/production-build

您还可以在package.json的脚本部分中检查可用的命令。

然后,node_modules目录发生了什么

构建过程正在使用webpack来构建项目。它仅包含运行应用程序所需的最少文件。它不会包含整个node_modules目录。


1
投票

您不需要(也不需要)上传node_modules。构建应用程序后,将编译依赖项,并且输出文件应位于/build目录中。您只需要将该目录上传到S3。

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