我正在学习基本的下一个js。如果我们运行npm,则运行build create-react-app将生成build文件夹index.html和捆绑文件。在下一个js中。它不会创建任何构建文件。我将如何在服务器中部署下一个js项目
答案 0 :(得分:1)
要构建下一个项目,请使用 npm run build ,要使其正常工作,您需要将其添加到package.json文件中的脚本中-
"scripts": {
"dev": "node server.js",
"build": "next build",
"start": "next start -p $PORT"
}
下一个构建是用于构建项目的命令,它为您提供.next文件夹,其中包含实际上需要在服务器上部署的所有已构建内容,但是您将部署整个项目文件夹,因为您还需要安装节点模块。
只需将您的整个项目运送到准备好运行Node js的主机上
npm start
答案 1 :(得分:1)
确保您的package.json文件脚本显示如下:
"scripts": { "dev": "next", # development "build": "next build", # build nextapp to .next folder "start": "next start", # start nextjs server for .next build folder "prod": "next export" # export nextjs files as bundle like in react app }
首先需要在.env中将Node.js设置为生产环境,或按以下方式使用它。
npm run build # to build the nextjs in .nextfolder NODE_ENV=production npm run start # set NODE_ENV to production and start server
但是,该端口将位于默认端口3000上。您可以更改端口以将流量作为"start": "next start -p 80",
直接提供给端口80和443,也可以使用高级反向代理(如nginx)将您的应用投放到全球。我建议使用nginx,因为它具有多线程功能,并且具有可以实现的出色安全功能。
答案 2 :(得分:0)
我通常使用Next CLI生成Next应用程序。它与create-react-app非常相似,但也会遵循所有最佳实践来生成Next的结构。这包括一个Next构建脚本:
npm run build
在旁注中,我个人发现Zeit托管是Next应用程序的理想平台(他们是开发Next的家伙)。您可以使用now
命令按原样部署应用,它们可以处理构建等。
这是我最近在托管的下一个Next应用的示例:https://stage.comerbeber.mx
答案 3 :(得分:0)
首先,在创建应用程序后,像<-
一样,自定义 package.json 文件为您自己的文件 "scripts": {
"dev": "next dev",
"build": "next build",
"start": "next server.js"
}
然后,使用yarn dev
在默认服务器上运行项目,
http:// localhost:3000 /
答案 4 :(得分:0)
您可以使用next export
:
npm run build
npx next export //if next not installed globally
但是它会禁用API路由,您应该使用http://example.com/about而不是http://example.com/about.html。
使用next start
:
npm run build
npm run start -p 8080