怎样能实现PHP上传500M-1G大文件而较少出现错误?

在公司测试的300M以上的大文件上传后点击“完成”,列表中没有该文件,但实际服务器上已经存在该文件。(平均800KB/S)服务器上php.ini中的设置:max_exec... 在公司测试的300M以上的大文件上传后点击“完成”,列表中没有该文件,但实际服务器上已经存在该文件。(平均800KB/S)

服务器上php.ini中的设置:
max_execution_time 和 max_input_time 还有IIS中的连接超时都是3600,
upload_max_filesize 和 post_max_size 都设置为2046M。
windows2003的IIS的上传限制也已经改为1G。
使用的phpdisk的系统设置:最大上传文件为1024M。

遇到这种情况怎么设置也不管用,到底该怎么办?
听人说PHP上传大文件就是有问题,不稳定,是真的吗?
展开
 我来答
百度网友2fa8b9d
2010-07-28 · TA获得超过810个赞
知道小有建树答主
回答量:559
采纳率:0%
帮助的人:636万
展开全部
大文件传送,用http方式传是不现实的,传的时间长脚本会超时的

你尝试改用ftp传送吧,php中有些关于ftp传文件的函数

以下是php以FTP方式传文件的代码,你参考下
$ftp_server="*.*.*.*";
$ftp_user="lu";
$ftp_pass="loveyou";

//setupaconnectionordie
$conn_id=ftp_connect($ftp_server)ordie("Couldn'tconnectto$ftp_server");

$login_result=ftp_login($conn_id,$ftp_user,$ftp_pass);

if((!$conn_id)||(!$login_result)){
echo"FTPconnectionhasfailed!";
echo"Attemptedtoconnectto$ftp_serverforuser$ftp_user_name";
exit;
}else{
echo"Connectedto$ftp_server,foruser$ftp_user_name";
}

//trytologin
$filename=date('Ymd').".xml";
$source_file="/usr/local/IVR/sendwireless/xml/data/".$filename;//源地址
echo$source_file;
$destination_file="/ITC/admin/logstat/ftplog/".$filename;//目标地址
$upload=ftp_put($conn_id,$destination_file,$source_file,FTP_BINARY)ordie("Couldn'tconnectto$ftp_server");
ftp_quit($conn_id);

if(!$upload){
echo"FTPuploadhasfailed!";
}else{
echo"Uploaded$source_fileto$ftp_serveras$destination_file";
}
ftp_close($conn_id);
terry_water_zy
2010-07-29
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
是的,126推出的新邮箱2G,一半传送个300M左右,在多了就出错!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dcyx2010
2010-07-28
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
这么大的文件 不用工具上传的话 不现实 局域网还可以实现
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
花剑山天星切可
2010-07-28 · TA获得超过220个赞
知道小有建树答主
回答量:192
采纳率:0%
帮助的人:123万
展开全部
我也不会
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式