加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – cURL在调用curl_exec时挂起服务器.

发布时间:2020-12-13 22:23:19 所属栏目:PHP教程 来源:网络整理
导读:在本地环境(OSX Mavericks,apache服务器)上进行测试,每次执行时都会挂起服务器的curl函数. 有罪的代码行是 $result = curl_exec($ch); 因此初始化: //initialize and setup the curl handler $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$this-_api_ur
在本地环境(OSX Mavericks,apache服务器)上进行测试,每次执行时都会挂起服务器的curl函数.

有罪的代码行是

$result = curl_exec($ch);

因此初始化:

//initialize and setup the curl handler
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$this->_api_url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch,CURLOPT_POST,count($params));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$params);

    //execute the request
    $result = curl_exec($ch);

执行时(解析了所有变量)页面无限期挂起.删除curl_exec命令“修复”挂起问题.

PHP 5.6.11

curl 7.38.0 (x86_64-apple-darwin12.5.0) libcurl/7.38.0

OpenSSL/0.9.8

Apache/2.2.29 (Unix)

这个答案(fixing curl_exec hangs in Windows 8 apache)表明多个会话是问题…我已经尝试在调用curl_exec之前终止会话,但它没有任何区别.

我没有想法尝试!我没有调试信息,因为服务器挂起而没有返回任何内容.如果有人有任何想法,我会尝试,我真的很感激!谢谢.

解决方法

问题在于使用OSX的内置服务器功能.切换到MAMP – 用于mac的专用本地Web服务应用程序 – 解决了这个问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读