Erro ao baixar o arquivo do FTP usando PHP

2

Estou tentando baixar um arquivo do FTP usando PHP. Eu testei o script em 2 servidores e funciona bem. Mas não funciona no servidor onde eu preciso que este script seja executado. Qualquer ajuda seria apreciável.

Estou recebendo este erro.

Aviso: ftp_nb_fget (): Digite como I. em /home/sites/example.com/public_html/path-to-file/download-file.php na linha 18

<?php
    ini_set("display_errors", "1");
    error_reporting(E_ALL);

    $ftp_server = "server_address";
    $ftp_username = "username";
    $ftp_userpass = "password";

    $ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
    $login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);

    $src_file = 'source_file';  //File to write
    $dest_file = 'server_file'; //File to download

    $data_file = fopen($src_file, 'w');

    // Initate the download
    $ret = ftp_nb_fget($ftp_conn, $data_file, $dest_file, FTP_BINARY);

    while ($ret == FTP_MOREDATA) {

       // Do whatever you want
       echo ".";

       // Continue downloading...
       $ret = ftp_nb_continue($ftp_conn);
    }
    if ($ret != FTP_FINISHED) {
       echo "There was an error downloading the file...";
       exit(1);
    }
    ?>

Eu também tentei ftp_get em vez de ftp_nb_fget mas recebendo o mesmo erro acima.

    
por user_387909 28.11.2016 / 15:07

1 resposta

1

Basicamente, o que poderia estar acontecendo - você está atrás do firewall, mas está tentando usar a sessão ftp ativa (que você é).
Isso explicaria por que sua sessão ftp foi estabelecida corretamente, mas a tentativa de buscar o arquivo falha.

Veja aqui como usar o ftp passivo

por 28.11.2016 / 19:17

Tags