我是cURL的新手,并搜索了一个好的脚本,使用cURL将远程文件下载到我的服务器。我发现的是:
<?php
$url = 'http://www.example.com/a-large-file.zip';
$path = $_SERVER['DOCUMENT_ROOT'] . '/downloads/a-large-file.zip';
$fp = fopen($path, 'w');
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FILE, $fp);
$data = curl_exec($ch);
curl_close($ch);
fclose($fp);
?>
这个脚本是here,它适用于某个部分。虽然在文章中,它声明此代码没有php内存限制的问题,它只是下载文件的8 MB ,无论文件的大小。
有没有人知道这种限制来自何处以及如何克服它?
答案 0 :(得分:0)
问题可能与超时有关吗? 尝试添加
curl_setopt($ ch,CURLOPT_TIMEOUT,300); //其中300是秒数
答案 1 :(得分:0)
尝试增加php.ini中的memory_limit。在PHP 5.2.0之前默认为8M。
答案 2 :(得分:0)
尝试在脚本顶部使用此功能
set_time_limit(0);
答案 3 :(得分:-1)
我发现问题出在哪里:脚本运行良好,但这是服务器的限制。我没有注意他们的政策,该政策明确规定不允许上传大于8 MB的文件。