У меня есть ПК с Windows 7, на котором установлен сервер FileZilla. Затем у меня есть PHP-скрипт на другом сервере, который подключается к FTP, используя ftp_connect
.
Это работало абсолютно нормально последние 4 месяца до вчерашнего дня, я начал получать следующую ошибку:
Warning: ftp_login() expects parameter 1 to be resource, boolean given in blah.phpp on line 43
Итак, я погуглил ошибку и обнаружил, что это виновник:
425 Не удается открыть соединение для передачи данных.
Вот полный журнал ошибок:
(000005) 11.09.2011 09:40:47 - (не авторизован) (myip)> Подключено, отправляется приветственное сообщение ...
(000005) 11.09.2011 09:40:47 - (не авторизован) (myip)> 220 Добро пожаловать на МОЙ ПК!
(000005) 11.09.2011 09:40:47 - (не авторизован) (myip)> USER vc
(000005) 11.09.2011 09:40:47 - (не авторизован) (myip)> 331 Требуется пароль для vc
(000005) 11.09.2011 09:40:47 - (не авторизован) (myip)> PASS *********
(000005) 11.09.2011 09:40:47 - vc (myip)> 230 Выполнен вход
(000005) 11.09.2011 09:40:47 - vc (myip)> PWD
(000005) 11.09.2011 09:40:47 - vc (myip)> 257 "/" - текущий каталог.
(000005) 11.09.2011 09:40:47 - vc (myip)> ТИП I
(000005) 11.09.2011 09:40:47 - vc (myip)> 200 Тип установлен на I
(000005) 11.09.2011 09:40:47 - vc (myip)> PASV
(000005) 11.09.2011 09:40:47 - vc (myip)> 227 Переход в пассивный режим (192,168,1,5,217,112)
(000005) 11.09.2011 09:40:47 - vc (myip)> MLSD
(000005) 11.09.2011 09:40:58 - vc (myip)> 425 Не удается открыть соединение для передачи данных.
(000005) 11.09.2011 09:42:59 - vc (myip)> 421 Превышено время ожидания соединения.
(000005) 11.09.2011 09:42:59 - vc (myip)> отключен.
Я выполнил шаги по сбросу настроек роутера, но это не помогло. С момента начала работы до первого появления проблемы в настройках сети произошли серьезные изменения. Я также получаю ту же ошибку при подключении через FTP-клиент.
Проблема была решена путем перехода с FileZilla Server на другой FTP-сервер.
Сервер Filezilla не поддерживает простое FTP-соединение (он работает с FTP (E) S), а поскольку ftp_connect, curl, wget работают с протоколом ftp, вы не можете подключиться к серверу FZ.