Тайм-аут Gulp Vinyl-FTP

Я изучаю Gulp и хочу попробовать поместить мои файлы.css на удаленный сервер. Я установил виниловый FTP для этого. Мой файл Gulp как таковой:

Всякий раз, когда я запускаю команду ftp, я получаю сообщение ERROR Error: Timeout while connecting to server,

Мой файл gulpfile.js как таковой:

'use strict';

var gulp = require('gulp');
var gutil = require( 'gulp-util' );  
var ftp = require( 'vinyl-ftp' );

/** FTP Configuration **/
var user = 'myusername';  
var password = 'password';  
var host = '123.456.789.100'; //I have also tried 'ftp.mysite.com'
var port = 21;  
var localFilesGlob = ['css/*.css'];  
var remoteFolder = '/css'

// helper function to build an FTP connection based on our configuration
function getFtpConnection() {  
    return ftp.create({
        host: host,
        port: port,
        user: user,
        password: password,
        parallel: 5,
        log: gutil.log
    });
}

gulp.task('ftp-deploy', function() {
    var conn = getFtpConnection();
    console.log(conn); //<--this seems to have the correct info
    return gulp.src(localFilesGlob, { base: '.', buffer: false })
        .pipe( conn.newer( remoteFolder ) ) // only upload newer files 
        .pipe( conn.dest( remoteFolder ) )
    ;
});

Очевидно, я проверил имя пользователя и пароль. Я могу подключиться к серверу нормально с моим FTP-клиентом.

Я также пытался поменять 'base' на 'cwd'.

Я запускаю это в Mac Terminal, если это имеет значение.

Кто-нибудь знает, что я сделал не так?

1 ответ

Ваш код выглядит хорошо для меня. Мое предположение было бы проблемой с passive/active режим ftp. Это обычно причина с ftps.

Что вы пробовали с вашим FTP-клиентом (у вас был активный или пассивный режим?).

По-видимому vinyl-ftp пока не поддерживает, так как находится в списке TODO.

Я боюсь, что пока нет обходного пути.

Другие вопросы по тегам