PHP FTP文件上传不工作


PHP FTP file upload does not work

我有一个很奇怪的问题。web应用程序从一台服务器移动到另一台服务器。从那时起,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文件上传不可能"。我查了我所知道的一切。禁用Selinux。当我手动执行FTP上传时(在控制台上使用"FTP"工具),它可以工作。文件名是随机生成的,看起来总是像这样:erefsdgftef.xml(无空格)

此代码是Magento中最后一个命令步骤的一部分,因此将始终通过apache httpd启动。

我没有得到更多的错误信息比一个张贴之前。

新服务器上的服务器配置必须有所不同。有人有更多的想法吗?

不确定这是你的答案,但你已经尝试过被动模式吗?

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