我希望有人可以帮助我调试这个问题,我有一个 PHP 脚本,可以很好地收集单个加密数据字符串,直到返回的字符串超过大约 500,000 个字符。
我的脚本当前输出 612,300 个字符,此时 CURL 返回空结果。
但是,如果我将字符串降低到 500,000 个字符以下,CURL 可以在结果中显示数据。
有谁知道这是为什么,以及我如何允许无限的返回字符串长度?
问题不在于 mod_security,因为它不会触发任何问题,它似乎仅与字符串长度相关。
谢谢
经过一番大量搜索后,我自己解决了这个问题,问题是设置 CURLOPT_BUFFERSIZE 默认情况下将自身限制为 512k。
将其增加到字符串中的字节/字符数可以解决此问题,就像延长超时设置一样,请参见下文:
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_BUFFERSIZE, 1000000);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT , 30);
curl_setopt($ch, CURLOPT_TIMEOUT, 300);