curl 返回502 Bad Gateway?

服务器上:

 $url='https://xxxx.com/test.php?code=1';        
   $curl = curl_init(); // 启动一个CURL会话  
   curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址  
   curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 对认证证书来源的检查  
   curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // 从证书中检查SSL加密算法是否存在  
   curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器  
   curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转  
   curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer  
   curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环  
   curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容  
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回  
   $tmpInfo = curl_exec($curl); // 执行操作  
   curl_close($curl); // 关闭CURL会话  
   return $tmpInfo; // 返回数据
   
   
   

//xxxx.com/test.php:

echo 'ok';

在浏览器上输入地址,向服务器请求数据,出现 502 Bad Gateway
按常理说,服务器的请求很简单。只要不涉及curl的请求都是好的。
什么原因造成?

环境:php5.2.17,centos6.5,阿里云。

网上查资料,说是php5.2.17的bug。

阅读 10.7k
2 个回答

502这种错误,肯定是有记录Nginx日志、php-fpm相关日志。查查日志对症解决。

code=1是参数不应该post 过去吗,为什么直接访问这个 $url='https://xxxx.com/test.php?code=1';  
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题