2017-11-08 1 views
1

gulp-vinyl-ftp 플러그인을 사용하여 원격 사이트에 업로드하려고합니다.FEAT 명령 후 Gulp Vinyl FTP ECONNRESET 오류

gulp.task("deploy", ["default"], function() { 

    var conn = ftp.create({ 
     host: "mywebsite", 
     user: "****", 
     password: "******", 
     // secure: true, 
     timeOffset: -301, 
     parallel: 1, 
     debug: gutil.log 
    });  

    var globs = [ 
     "distr/**/*.php", 
     "!out/vendor/**", 
     "!out/config.php", 
     "out/**/*.map", 
     "out/**/*.css", 
     "out/**/*.js" 
    ]; 
    return gulp.src(globs) 
     .pipe(conn.newer("/")).pipe(debug({ title: "Deploy New: " })) 

}); 

그러나, 나는 다음과 같은 오류를 수신하고 다음과 같이

events.js:182 
    throw er; // Unhandled 'error' event 
^

Error: read ECONNRESET 
    at exports._errnoException (util.js:1016:11) 
    at TCP.onread (net.js:609:25) 

디버그 출력은 다음과 같습니다

[08:37:28] [connection] < '220 Microsoft FTP Service\r\n' 
[08:37:28] [parser] < '220 Microsoft FTP Service\r\n' 
[08:37:28] [parser] Response: code=220, buffer='Microsoft FTP Service' 
[08:37:28] [connection] > 'USER xxx' 
[08:37:29] [connection] < '331 Password required\r\n' 
[08:37:29] [parser] < '331 Password required\r\n' 
[08:37:29] [parser] Response: code=331, buffer='Password required' 
[08:37:29] [connection] > 'PASS xxxx' 
[08:37:29] [connection] < '230 User logged in.\r\n' 
[08:37:29] [parser] < '230 User logged in.\r\n' 
[08:37:29] [parser] Response: code=230, buffer='User logged in.' 
[08:37:29] [connection] > 'FEAT' 

그것은이 끝납니다.

그러나 WinSCP를 통해 정상적으로 연결할 수 있습니다.

. 2017-11-08 08:36:24.161 Connecting to mywebsite ... 
. 2017-11-08 08:36:24.192 Connected with mywebsite. Waiting for welcome message... 
< 2017-11-08 08:36:24.285 220 Microsoft FTP Service 
> 2017-11-08 08:36:24.285 USER xxxx 
< 2017-11-08 08:36:24.379 331 Password required 
> 2017-11-08 08:36:25.861 PASS ******** 
< 2017-11-08 08:36:25.970 230 User logged in. 
> 2017-11-08 08:36:25.970 SYST 
. 2017-11-08 08:36:26.064 The server is probably running Windows, assuming that directory listing timestamps are affected by DST. 
< 2017-11-08 08:36:26.064 215 Windows_NT 
> 2017-11-08 08:36:26.064 FEAT 
< 2017-11-08 08:36:26.157 211-Extended features supported: 
< 2017-11-08 08:36:26.157 LANG EN* 
< 2017-11-08 08:36:26.157 UTF8 
< 2017-11-08 08:36:26.157 AUTH TLS;TLS-C;SSL;TLS-P; 
< 2017-11-08 08:36:26.157 PBSZ 
< 2017-11-08 08:36:26.157 PROT C;P; 
< 2017-11-08 08:36:26.157 CCC 
< 2017-11-08 08:36:26.157 HOST 
< 2017-11-08 08:36:26.157 SIZE 
< 2017-11-08 08:36:26.157 MDTM 
< 2017-11-08 08:36:26.157 REST STREAM 
< 2017-11-08 08:36:26.157 211 END 
> 2017-11-08 08:36:26.157 OPTS UTF8 ON 
< 2017-11-08 08:36:26.251 200 OPTS UTF8 command successful - UTF8 encoding now ON. 
. 2017-11-08 08:36:26.298 Connected 

호스트 필드에서 IP 주소와 도메인 이름을 모두 시도했지만 timeOffset 및 parallel 옵션을 주석 처리했습니다.

정직하게 여기에서 어디로 가야할지 모르겠습니다. 어떤 조언을 주시면 감사하겠습니다.

감사합니다.

답변

1

FEAT 명령을받은 후 IIS에 관한 많은 게시물이 신비하게 (그리고 일관성없이) 연결을 닫을 수 있습니다.

확실한 해결책을 찾지 못했지만 작동 해결 방법이 FEAT 명령 (Gulp에서 처리 할 수있는 경우)을 거부하는 것으로 보입니다.

IIS 관리자에서 FTP> FTP 요청 필터링> 명령 탭> 작업> 거부 명령FEAT을 입력하십시오.

도 참조하십시오. Microsoft FTP fails to connect after the client requests the list of features (FEAT).

+0

감사합니다. 불행히도이 웹 사이트에서는 서버에 대한 액세스가 매우 제한적이지만, 내가 할 수있는 일을 볼 수 있습니다. 적어도 적절한 방향으로 나를 가리켜 주셔서 고맙습니다. 나는 IIS가 기여한 요인으로 "이상한"것으로 의심하지 않았을 것입니다. – KellyMarchewa

관련 문제