php curl请求https 返回无结果|false|errno:35

1 SSL: certificate subject name ‘WMSvc-GWAMSERVER02‘ does not match target host name

把curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

2 Curl error: SSL certificate problem: self signed certificate in certificat

这个是CURLOPT_SSL_VERIFYHOST 设为1引起,不同版本的libcurl对curl的CURLOPT_SSL_VERIFYHOST有影响

先在mac下,然后centos7下libcurl版本7.4以上 出现类似问题

解决方案

1

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

2 降低libcurl版本 到7.4下

wget http://curl.haxx.se/download/curl-7.38.0.tar.gz
tar xzvf curl-7.38.0.tar.gz
cd curl-7.38.0/
./configure
486 make && make install

 

时间: 2024-07-31 07:52:25

php curl请求https 返回无结果|false|errno:35的相关文章

curl 请求https内容,返回空

$ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$api); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//禁止直接显示获取的内容 重要 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不验证证书下同 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // $json = curl_exec($ch);

nginx+php下curl请求https报502错

在做公司项目的时候使用了第三方的API接口,且接口采用的是https请求,在本地的wamp集成环境开发测试正常,放到服务器上结果报错 nginx 502 bad gateway.在论坛中爬楼了几天今天终于找到原因,php版本问题: 公司项目线上环境: 服务器安装了wdcp其中nginx是1.4.2版本 php是5.2.17版本 部署项目上去后,怎么运行都报502错,刚开始怀疑是nginx配置问题,百度了许久说请求https需要ssl于是配置了nginx的ssl后问题依旧,无奈只好继续搜索答案.

PHP Curl请求Https接口

在请求http的时候只需要 file_get_contents("http://www.sojson.com/open/api/weather/json.shtml?city=$Position");就可以了,但是发现这个接口现在变成了https协议了还用这种方法就会403首先看看PHP有没有curl扩展,我是7.2 我用的是Laravel社区的封装好的方法 public static function curl($url, $params = false, $ispost = 0,

php使用curl扩展请求HTTPS链接报sslv3 alert 错误

报错信息 使用php的curl请求https链接时报"error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure" 错误 原因分析 使用php的curl扩展时,curl_setop的CURLOPT_SSLVERSION取值为3,对应协议为ssl v3,因为之前的POODLE 病毒爆发,许多网站禁用了sslv3(nginx默认是禁用的,ssl_protocols 默认值为TLSv1 TLSv1.1 T

PHP:CURL分别以GET、POST方式请求HTTPS协议接口api

1.curl以GET方式请求https协议接口 //注意:这里的$url已经包含参数了,不带参数你自己处理哦GET很简单 function curl_get_https($url){ $curl = curl_init(); // 启动一个CURL会话 curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1)

PHP函数CURL分别以GET、POST方式请求HTTPS协议接口api

1.curl以GET方式请求https协议接口 1 function curl_get_https($url){ 2 $curl = curl_init(); // 启动一个CURL会话 3 curl_setopt($curl, CURLOPT_URL, $url); 4 curl_setopt($curl, CURLOPT_HEADER, 0); 5 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 6 curl_setopt($curl, CURL

curl分别以get,post方式请求https协议接口api

1.curl以GET方式请求https协议接口 //注意:这里的$url已经包含参数了,不带参数你自己处理哦GET很简单 function curl_get_https($url){ $curl = curl_init(); // 启动一个CURL会话 curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1)

用curl发起https请求

使用curl发起https请求 使用curl如果想发起的https请求正常的话有2种做法: 方法一.设定为不验证证书和host. 在执行curl_exec()之前.设置option $ch = curl_init(); ...... curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 方法二.设定一个正确的证书. 本地ssl判别证书太旧,导致链接报错ssl

用curl获取https请求

今天一个同事反映,使用curl发起https请求的时候报错:"SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed" 很明显,验证证书的时候出现了问题. 使用curl如果想发起的https请求正常的话有2种做法: 方法一.设定为不验证证书和host.