如何使用像filezilla这样的ftp服务器将没有vercel的下一个js应用程序部署到自定义服务器
Posted
技术标签:
【中文标题】如何使用像filezilla这样的ftp服务器将没有vercel的下一个js应用程序部署到自定义服务器【英文标题】:how to deploy next js app without vercel to custom server using ftp server like filezilla 【发布时间】:2021-09-17 18:08:18 【问题描述】:我可以在没有 vercel 的情况下将下一个 js 应用程序部署到自定义服务器吗 在 react js 中,我曾经使用构建文件夹来使用 FTP 服务器进行部署 在下一个 js 中我不知道要上传哪些文件 请问有什么帮助吗?
【问题讨论】:
运行next build && next export
,上传dist
文件夹。
【参考方案1】:
yarn add ftp-deploy
在 src 之外创建文件 deploy.js
把这段代码放在上面:
var FtpDeploy = require('ftp-deploy');
var ftpDeploy = new FtpDeploy();
require('dotenv').config( path: '.env.local' );
var config =
user: process.env.FTP_USER,
// Password optional, prompted if none given
password: process.env.FTP_PASS,
host: process.env.FTP_HOST,
port: process.env.FTP_PORT || 21,
localRoot: __dirname + '/build',
remoteRoot: process.env.FTP_REMOTE_ROOT,
// this would upload everything
include: ['*'],
// e.g. exclude sourcemaps, and ALL files in node_modules (including dot files)
exclude: [],
// delete ALL existing files at destination before uploading, if true
deleteRemote: process.env.FTP_DELETE,
// Passive mode is forced (EPSV command is not sent)
forcePasv: true,
;
ftpDeploy
.deploy(config)
.then((res) => console.log('finished ;)'))
.catch((err) => console.log(err));
ftpDeploy.on('uploading', (d) =>
console.log(
`$d.transferredFileCount / $d.totalFilesCount => $d.filename`
);
);
ftpDeploy.on('upload-error', function (data)
console.log('upload-error =>', data.err); // data will also include filename, relativePath, and other goodies
);
然后请在 env 文件中输入您的数据库信息,并在此文件中使用变量名
【讨论】:
以上是关于如何使用像filezilla这样的ftp服务器将没有vercel的下一个js应用程序部署到自定义服务器的主要内容,如果未能解决你的问题,请参考以下文章