php curl 请求https地址一直返回返回false
按照以前做法是在请求中添加以下参数对https做处理
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 禁止 cURL 验证对等证书
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);设置为 1 是检查服务器SSL证书中是否存在一个公用名(common name)。译者注:公用名(Common Name)一般来讲就是填写你将要申请SSL证书的域名 (domain)或子域名(sub domain)。 设置成 2,会检查公用名是否存在,并且是否与提供的主机名匹配。 0 为不检查名称。
执行 curl_error 返回的报错是 Protocol "https" not supported or disabled in libcurl (它说libcurl中不支持https )
原因是安装编译curl是的时候没有安装openssl
重新编译curl库
https://curl.haxx.se/download.html 官网下载地址
https://curl.haxx.se/docs/install.html 安转教程页面
./configure --with-ssl 如果使用源安转则不需要指定 --with-ssl
make
make install
成功之后安装重新编译php源代码中的curl库 在 ext/curl 中
phpize
./configure --with-php-config=php-config
make && make install
解决
如果安装完curl找不到libcurl.so 的话需要把 编译好的 libcurl.so 链接到/usr/lib/x86_64-linux-gnu/ 根据你的/etc/ld.so.conf 这个文件里面自动加载的目录