PHP FTP загрузка файлов не работает - PullRequest
1 голос
/ 12 сентября 2011

У меня довольно странная проблема. Веб-приложение перемещено с одного сервера на другой. С тех пор загрузка по FTP больше не работает.

$ftp = ftp_connect('ftphost');
if ($ftp == false) {
    error_log('FTP Connect not possible');
}
$fp = fopen($filename, 'r');
if ($fp == false) {
    error_log('Opening file not possible');
}
$login = ftp_login($ftp, 'username', 'password');

if ($login == false) {
    error_log('FTP login not possible');
}

$status = ftp_fput($ftp, basename($filename), $fp, FTP_BINARY);
if ($status == false) {
    error_log('FTP file upload not possible');
}

Сообщение об ошибке «Загрузка файла FTP невозможна». Я проверил все, что я знаю. Селинукс отключен. Когда я делаю FTP-загрузку вручную (на консоли с помощью инструмента «ftp»), это работает. Имена файлов генерируются случайным образом и всегда выглядят так: erefsdgftef.xml (без пробелов.)

Этот код является частью последнего шага заказа в Magento и поэтому всегда будет инициироваться через Apache httpd.

Я не получаю больше сообщений об ошибках, чем опубликованное ранее.

Что-то с конфигурацией сервера должно быть другим на новом сервере. У кого-нибудь есть еще идеи?

1 Ответ

0 голосов
/ 12 сентября 2011

Не уверен, что это ваш ответ, но вы уже пытались сделать это в пассивном режиме?

http://nl3.php.net/manual/en/function.ftp-pasv.php

...