我使用的脚本将两个大文件上传到远程服务器。 当我测试它时,它上传一个文件,脚本执行了一段时间,最后失败。但是当我的客户端执行相同的脚本(他也是服务器所有者)时,脚本在5分钟的间隙后上传两个文件第一个文件上传。我无法理解问题是什么?我认为必须是客户端ftp服务器的有线设置问题。
<?php
$host = '[HOST]';
$username = '[USERNAME]';
$password = '[PASSWORD]';
$remotepath = '[SERVER DESTINATION FOLDER]';
$ftp_conn = ftp_connect($host);
@$login = ftp_login($ftp_conn, $username, $password);
ftp_pasv($ftp_conn, true);
if($login){
$file_array = array('IMG_4852.CR2','IMG_4839.CR2');
foreach($file_array as $file){
echo 'Uploading file '.$file.'<br/>';
$ret = ftp_nb_put($ftp_conn, $remotepath.$file, dirname(__FILE__).'/'.$file, FTP_BINARY, FTP_AUTORESUME);
while($ret == FTP_MOREDATA) {
$ret = ftp_nb_continue($ftp_conn);
var_dump($ret) ;echo '<br>';
}
if ($ret != FTP_FINISHED){
echo "Error uploading $file";
}
}
}
?>
任何人都可以帮我确认这是一个ftp服务器配置问题或我的代码。
输出大量的2然后
Warning: ftp_nb_continue() [function.ftp-nb-continue]: Ok to send data. in C:\Program Files (x86)\EasyPHP-5.3.6.1\www\uploadtoserver.php on line 18
int 0
Error uploading IMG_4852.CR2Uploading file IMG_4839.CR2
Warning: ftp_nb_put() [function.ftp-nb-put]: Transfer complete. in C:\Program Files (x86)\EasyPHP-5.3.6.1\www\uploadtoserver.php on line 15
Error uploading IMG_4839.CR2
提前致谢。