【求助】PHP,curl请求https协议url失败,返回502状态码?

<?php
$url = 'https://www.baidu.com';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);// 这个是主要参数
$data = curl_exec($curl);
curl_close($curl);
var_dump($data);
?>

请求http链接可以正常得到结果。如果换成https协议链接的话,nginx返回“HTTP 502 - Bad Gateway 没有响应”。请大神指导,这是为什么,怎么解决这个问题。

  • 开发环境:PHP study8.1.1.3,window,php7.0.9,nginx1.15.11
  • 以www.baidu.com举例,如图所示,请求http协议没问题,请求https协议报错
    屏幕截图 2025-03-29 215519.png
    屏幕截图 2025-03-29 215359.png
  • 尝试过以下方案,还是没有解决
  1. php.ini配置了最新下载的证书,代码里指向最新下的证书。
  2. 代码里设置跳过ssl。

展开
收起
1327074981472121 2025-04-05 21:53:21 45 发布于北京 分享
分享
版权
举报
0 条回答
写回答
取消 提交回答

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

还有其他疑问?
咨询AI助理
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等