我对 Next js 及其部署过程相当陌生。我最近将我的一个 react js 项目转换为 Next js,以利用 Next js 提供的服务器端渲染功能。现在到了部署时间,我发现如果没有 node_modules
,Next 构建将无法部署。服务器中存在的文件夹。我用 getServerSideProps
在我的页面中并使用 "build": "next build"
构建package.json 中的命令。问题是我的 node_modules 文件夹接近 300MB(.next
build 又增加了大约 10MB),我认为每次部署都伴随这么大的重量并不是最佳实践(我打算部署这个构建的不同实例,因此 310MB X 实例数)在服务器中。
我在这里做错了什么还是这是实现这一目标的唯一方法?我很感激任何答案。谢谢...
最佳答案
经过一番研究,我正在回答我自己的问题。如果您使用 getServerSideProps
你不能静态导出你的项目。因此需要 node_modules 文件夹才能在服务器上部署项目。这并不意味着您必须通过 FTP node_modules
,您可以在服务器端进行 npm 构建,它将下载 node_modules
到部署文件夹。就我而言,部署文件夹重约 310MB,其中 node_modules
文件夹本身大约是 300MB。
关于node.js - Next js 生产构建是否需要服务器中的 node_modules 文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64947025/