我正在做这个项目。在那里我用node/express创建了rest api。
我已经用nginx和pm2在vps上部署了rest api。
http://umer.pawnhost.com/
我已经用next js创建了前端。我没有使用next-js的api文件夹。
我正在使用.env.local
和next.config.js
我看过下一篇js文档,但他们说要么在vercel上部署,要么创建一个自定义服务器。
我没有得到自定义服务器部分
以下是我的文件夹结构:
client (Next JS)
------
.env.local
next.config.js
...
server (Node / Express)
------
...
package.json
.env
.gitignore
如何在同一个vps上部署我的下一个js应用程序?
您可以添加一个前端express服务器,为您的nextjs应用程序处理路由。创建一个server.js并添加以下
const express = require('express');
const next = require('next');
const port = 3000;
const dev = process.env.APP_ENV === 'local';
const app = next({ dev });
const handle = app.getRequestHandler();
app.prepare().then(() => {
const server = express();
server.get('*', (req, res) => {
return handle(req, res);
});
server.listen(port, err => {
if (err) throw err;
});
});
构建并启动服务器
"build": "next build",
"start": "NODE_ENV=production node server.js",
这将在配置的端口启动服务器