PHP - CURL - 上传128MB后减速

时间:2015-06-27 17:56:15

标签: php apache curl memory wamp

我正在运行一个脚本(在Windows Server 2008 R2 x64上,运行最后一个WAMP,使用PHP CLI),将大文件(500-700mb)上传到远程主机。

以下是代码:

function upload_file($file){

//some check to see file exists and get tokens...

//The upload code itself
$post_fields['vfile'] = "@".$file;
$post_fields['upload'] = "1";
$post_fields ['token'] = 'xxxxxx';
if(!empty($user_token))
$post_fields['upload_hash'] = $user_token;

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,$converter); 
curl_setopt($ch, CURLOPT_POST,1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_NOPROGRESS, false);
$result=curl_exec ($ch); 

curl_close ($ch);

return $result;
}

问题在于,在以大约35mb / s的速度上传128MB之后,上传速度减慢到大约1mb / s,直到文件的其余部分为止。

我的猜测是php memory_limit是问题,所以我尝试将php.ini文件修改为memory_limit = -1,然后我理解CLI有一个不同的php.ini,然后我使用-d参数从cmd运行php :

  

C:\ wamp \ bin \ php \ php5.5.12 \ php.exe -d memory_limit = -1 C:\ wamp \ www \ uploader.php

然后我尝试设置

ini_set("memory_limit",-1);

当我回应

echo ini_get("memory_limit");

结果是-1所以我现在认为php不是问题,我想知道你是否有任何想法解决这个问题,并继续以35mb / s的速度上传?另外,我想提一下我是远程主机的朋友,他向我保证没有上传速度限制。

0 个答案:

没有答案