Я написал некоторый код, который обращается к FTP-серверу и загружает плоские файлы.Он работает в моей среде разработки в WAMP (Windows; 5.3.10), но на рабочем сервере (5.3.2 - Linux) происходит сбой при вызове ftp_nlist.
Он сидит там около 30 секунд, а затем умирает сзакодированное сообщение об ошибке [FTP] Unable to retrieve files in the directory
.
Вот соответствующий код:
$link = ftp_connect(constant("FTP_SERVER"));
if(!$link)
die("Unable to open connection to FTP Server: " + constant("FTP_SERVER"));
if(!ftp_login($link,
constant("FTP_USER"),
constant("FTP_PASSWORD")))
die("Unable to login; check username and password.");
if(!ftp_chdir($link,
constant("FTP_PATH")))
die("Unable to change to directory: " + constant("FTP_PATH"));
ftp_pasv($link, true);
clearDownloadDir(); // Delete already downloaded files
/* Get a list of all files */
$files = ftp_nlist($link, '.');
if(!$files)
die("[FTP] Unable to retrieve files in the directory.");
Константы определены в другом файле как:
define("FTP_SERVER", "ftp.{server}");
define("FTP_PATH", "./Australia/");
define("FTP_USER", "{user}");
define("FTP_PASSWORD", "{password}");
То, чтоя понял, что он подключается (о чем свидетельствует его отсутствие на ftp_connect) и работает локально.FTP_NLIST возвращает логическое значение ИСТИНА (1).Есть идеи?