0

我对 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);
?>

这个脚本在这里,它在某种程度上有效。虽然在文章中说这段代码不存在 php 内存限制的问题,它只是下载了正好 8 MB 的文件,无论文件大小。

有谁知道这个限制来自哪里以及如何克服它?

4

4 回答 4

0

尝试在脚本顶部使用它

set_time_limit(0);
于 2013-05-10T17:01:37.843 回答
0

尝试增加 php.ini 中的 memory_limit。PHP 5.2.0 之前的默认值为 8M。

于 2013-05-10T09:49:43.653 回答
0

问题可能与超时有关吗?尝试添加

curl_setopt($ch, CURLOPT_TIMEOUT, 300); // 其中 300 是秒数

于 2013-05-10T09:44:11.193 回答
-1

我发现问题出在哪里:脚本运行良好,但这是服务器的限制。我没有注意他们的政策,该政策明确规定不允许上传大于 8 MB 的文件。

于 2013-05-20T07:20:21.723 回答