PHP-Curl提示Protocol “https“ not supported or disabled in libcurl

问题产生

本地开发环境使用的是 MxSrvs ,Mac下还算好用的一个集成环境,官网: http://www.xsrvs.com/docs.html

今天在使用的时候,使用CURL调用https接口的时候提示,
Protocol “https” not supported or disabled in libcurl

解决问题思路

1、提示信息为 协议不支持或者被禁用,第一反应是看下自己的CURL是否开启,打印phpinfo之后,发现CURL扩展是开启的。

2、发现CURL开启,没法请求https接口可能是 接口地址不对,之前遇到过请求的多了个URL空格,仔细检查后发现没有问题。

3、仔细检查了CURL相关的配置项

cURL supportenabled
cURL Information7.73.0
SSLNO

发现在SSL这一项显示为NO,说明curl不支持SSL

可能产生的原因:

  1. 系统自带的CURL不支持https,命令行输入
curl -V 

Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS GSS-API HTTP2 HTTPS-proxy IPv6 Kerberos Largefile libz MultiSSL NTLM NTLM_WB SPNEGO SSL UnixSockets

发现支持的协议中有https,说明系统自带的CURL库没有问题

  1. 编译php的时候没有指定开启SSL,检查php编译参数,发现没有带 --with-ssl参数说明编译的时候少参数了。需要重新编译php,编译命令如下,(需要把参数修改为自己的)【PS:如果找不到系统自带的curl可以自己去下载一个编译一下,编译的时候需要注意参数,mac下编译CURL的参数和其他平台不同】
'./configure' '--prefix=/Applications/MxSrvs/bin/php' '--with-openssl=/usr/local/Cellar/openssl@1.1/1.1.1d/' '--with-config-file-path=/Applications/MxSrvs/bin/php/etc' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-iconv=/Applications/MxSrvs/libs/_libiconv/1.16' '--with-zlib' '--with-curl' '--with-jpeg' '--with-freetype' '--with-openssl' '--with-mhash' '--with-gettext=/Applications/MxSrvs/libs/_gettext/0.20.2' '--with-pear' '--without-gdbm' '--enable-gd' '--enable-mbstring' '--enable-ftp' '--enable-bcmath' '--enable-sockets' '--enable-xml' '--enable-mbregex' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-fpm' '--disable-fileinfo' '--disable-rpath' 'PKG_CONFIG_PATH=/Applications/MxSrvs/libs/_libxml/2.9.9/lib/pkgconfig:/Applications/MxSrvs/libs/_openssl/1.1.1g/lib/pkgconfig:/Applications/MxSrvs/libs/_sqlite/3.31.1/lib/pkgconfig:/Applications/MxSrvs/libs/curl-7.73.0/lib/pkgconfig:/Applications/MxSrvs/libs/_zlib/1.2.11/lib/pkgconfig:/Applications/MxSrvs/libs/_libpng/1.6.37/lib/pkgconfig:/Applications/MxSrvs/libs/_jpeg/9d/lib/pkgconfig:/Applications/MxSrvs/libs/_freetype/2.10.2/lib/pkgconfig:/Applications/MxSrvs/libs/_oniguruma/6.9.5/lib/pkgconfig:/Applications/MxSrvs/libs/_libgd/2.3.0/lib/pkgconfig:'
  1. 编译、编译安装
make 
make install
  1. 重新启动PHP,查看phpinfo信息

Mac下编译curl

PS:需要注意版本的问题,老版本的curl在11.15系统编译时候,可能会出现问题,下载新版本的curl安装就可以

#下载curl
wget https://curl.se/download/curl-7.73.0.tar.gz
#编译
./configure  --prefix=/Applications/MxSrvs/libs/curl-7.73.0 -with-ssl=/usr/local/Cellar/openssl@1.1/1.1.1d/  --with-winssl  --with-darwinssl
#编译
make
#编译安装
make install
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奇葩也是花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值