我已经制作了一个等待文件的表单。提交后,文件将通过ftp_put()
功能上传到远程服务器。问题在于它需要2/3分钟。
我尝试逐一删除行,以找出错误的内容,以及调用ftp_put()
这需要花费大量时间的电话。该文件只有20Ko。有没有办法在其他线程或其他东西上传文件?
编辑: 这是我的PHP代码。
$file = $_FILES['attachment']['tmp_name'];
$ext = pathinfo($_FILES['attachment']['name'], PATHINFO_EXTENSION);
$remote_file = '/cv_'.$_POST['first_name'].'_'.$_POST['last_name'].'_'.strval(time()).'.'.$ext;
$ftp_server = 'xxxxxxxxx';
$ftp_user_name = 'xxxxxx';
$ftp_user_pass = 'xxxxxx';
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if (!ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) /* This line is taking so long */
{
echo "There was a problem uploading the file $file\n";
}
ftp_close($conn_id);
编辑2:文件在几分钟后正确上传。代码在localhost上正常运行,但是当它在生产服务器上运行时,它会花费很长时间。
答案 0 :(得分:2)
解决它启用被动模式。