Skip to content

1、安装gulp和gulp-sftp

    $ npm i gulp gulp-sftp --save-dev

2、在项目根目录新建gulp配置文件gulpfile.js

    var gulp = require('gulp');
    var sftp = require('gulp-sftp');

    const sftpOption = {
    host: '120.77.221.25', // FTP主机地址
    auth: 'FTPServer1', // 下一步创建的 .ftppass 文件里面对应的授权方式
    remotePath: '/data/www/xxxx.com/', // FTP需要上传的位置
    }

    gulp.task('upload', function () {
        return gulp.src('dist/**')
            .pipe(sftp(sftpOption));
    });

3、创建gulp-sftp配置文件.ftppass

为了保证ftp账号安全,将FTP账号密码配置放在单独的文件中,并添加至版本控制系统的禁用列表中

{
    "FTPServer1": {
        "user": "root",
        "pass": "xxxxxxx"
    }
}

4、至此我们可以使用gulp来执行定义的上传任务了

$ gulp upload

执行命令后我们项目的dist目录下的所有文件都上传到服务器/data/www/xxxx.com/目录下了

5、创建命令

为了方便我们构建完成后自动上传可以package.json中定义一个命令

{
  "scripts": {
    "upload": "gulp upload"
  }
}

这样我们就可以直接执行npm run upload命令来编译并上传我们的应用了

$ npm run upload

6、参考链接

https://xiaozhuanlan.com/topic/1379680524