PHP Curl-来自服务器的空回复

PHP Curl-来自服务器的空回复,php,apache,curl,Php,Apache,Curl,我有一个应用程序,它使用curlpost请求调用restfulapi。如果POSTFIELD数据的大小较小,则请求将给出所需的响应(我解决了这个问题。正如我所怀疑的,问题是内存泄漏。我重新访问了API代码并取消设置了一些不必要的对象,这些对象释放了内存供进一步处理。@Timm和@Mihai感谢您的帮助!!我解决了这个问题。正如我所怀疑的,问题是内存泄漏。我重新访问了API代码并取消设置了一些不必要的对象,这些对象可能会导致内存泄漏。)内存不足,需要进一步处理。@Timm和@Mihai感谢您的帮助

我有一个应用程序,它使用curlpost请求调用restfulapi。如果POSTFIELD数据的大小较小,则请求将给出所需的响应(我解决了这个问题。正如我所怀疑的,问题是内存泄漏。我重新访问了API代码并取消设置了一些不必要的对象,这些对象释放了内存供进一步处理。@Timm和@Mihai感谢您的帮助!!

我解决了这个问题。正如我所怀疑的,问题是内存泄漏。我重新访问了API代码并取消设置了一些不必要的对象,这些对象可能会导致内存泄漏。)内存不足,需要进一步处理。@Timm和@Mihai感谢您的帮助!!

空回复本身不是curl的问题。http服务器不应该以空响应进行回复。它必须被破坏或其他什么。您能提供其他服务的详细信息吗?可能有防火墙阻止您的请求吗?查看curl\u getinfo对于http_code@Timm,它位于防火墙下,但是较小的帖子会得到处理,如果较大的帖子,部分数据也会被API处理。此外,API和应用程序托管在同一台服务器上(应用程序架构本身就是这样!),因此这不应该是防火墙问题。@Mihai curl getinfo响应:[content\u type]=>0[http\u code]=>0[header\u size]=>0[request\u size]=>1339[filetime]=>1[ssl\u-verify\u result]=>0[redirect\u count]=>0[total\u time]=>8.03231[namelookup\u time]=>0.000262[connect\u time]=>0.000958[pretransfer\u time]=>0.019984[size\u-upload]=>830166[size\u-download]=>0[size\u-download]=>0[下载速度]=>103353][下载内容长度]=>0[上传内容长度]=>830166[开始传输时间]=>0.021911[重定向时间]=>0@Harsh你能试试curl\u setopt(curl,CURLOPT\u FAILONERROR,true)吗并查看它是否输出消息?curl\u error怎么说?空的回复本身不是curl的问题。http服务器永远不应该以空的响应进行回复。它必须被破坏或其他什么。您能提供有关其他服务的更多详细信息吗?可能有防火墙阻止您的请求吗?查看curl_getinfo for http_code@Timm它在防火墙下,但是较小的帖子会得到处理,如果帖子较大,部分数据也会由API处理。此外,API和应用程序托管在同一台服务器上(应用程序架构本身就是这样!),所以这不应该是防火墙问题。@Mihai curl getinfo响应:[content\u type]=>[http\u code]=>0[header\u size]=>0[request\u size]=>1339[filetime]=>1[ssl\u verify\u result]=>0[redirect\u count]=>0[total\u time]=>8.03231[namelookup\u time]=>0.000262[connect\u time]=>0.000958[pretransfer\u time]=>0.019984[size\u upload]=>830166[大小下载]=>0[速度下载]=>0[速度上传]=>103353[下载内容长度]=>0[上传内容长度]=>830166[开始传输时间]=>0.021911[重定向时间]=>0@Harsh你能试试curl\u setopt(curl,CURLOPT\u FAILONERROR,true)吗并查看它是否输出一条消息?curl\u error说什么?那么POST size在curl中有一个限制?那么POST size在curl中有一个限制?
                $curl = curl_init($this->serviceUrl);
                $curl_post_data = (is_array($data)) ? http_build_query($data) : $data;
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($curl, CURLOPT_TIMEOUT, 420); 
                curl_setopt($curl, CURLOPT_POST, true);
                curl_setopt($curl, CURLOPT_HTTPHEADER, array('Expect:'));
                curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
                $curl_response = curl_exec($curl);

                if ($curl_response === false) {
                    $errorMessage = curl_error($curl);
                    $info = curl_getinfo($curl);
                    \Tools::writeErrorLog($errorMessage);
                    \Tools::writeErrorLog($info);
                }

                curl_close($curl);
                return $curl_response;