-
首先,需要创建一个next.js应用,并添加一个express服务器。
-
在next.js应用的根目录中新建一个名为“server.js”的文件,并在其中添加如下代码:
const express = require('express');
const next = require('next');
const dev = process.env.NODE_ENV !== 'production';
const app = next({ dev });
const handle = app.getRequestHandler();
app.prepare().then(() => {
const server = express();
server.get('*', (req, res) => {
return handle(req, res);
});
server.listen(3000, (err) => {
if (err) throw err;
console.log('> Ready on http://localhost:3000');
});
});
- 然后,在package.json文件中,添加以下“start”脚本:
"scripts": {
"dev": "node server.js",
"build": "next build",
"start": "NODE_ENV=production node server.js"
}
-
接下来,创建一个Heroku账户,并安装Heroku CLI工具。
-
使用Heroku CLI工具登录,并在命令行中创建一个Heroku应用程序:
heroku login
heroku create
- 在将本地代码推送到Heroku之前,需要在项目根目录中创建一个名为“Procfile”的文件,并添加如下代码:
web: npm start
- 现在,可以将代码推送到Heroku:
git add .
git commit -m "Initial commit"
git push heroku master
-
如果部署成功,则可以通过Heroku应用程序的URL访问您的应用程序。
-
如果你使用的是VPS,可以使用pm2或者forever将node应用部署在VPS上。具体内容可以参考相关文档。
通过以上步骤,您就可以将带有自定义后端的next.js应用程序部署到Her