php中curl不支持https的解决办法

在php程序中使用curl去访问https站点时,报错:
Protocol https not supported or disabled in libcurl

该错误信息表示php当时编译时使用的curl库不支持https, 验证方法为
你的curl安装目录/bin/curl  -V  
显示如下:
Protocols: dict file ftp gopher http imap pop3 rtsp smtp telnet tftp
这表示curl是不支持 https的

为了支持https,需要下载源码包,重新编译curl

tar zxvf curl-7.24.0.tar.gz
cd  curl-7.24.0
./configure --prefix=/usr/local/services/curl-7.24.0 --with-ssl=/usr/local/services/openssl-0.9.8a
#请注意,这里一定要使用 --with-ssl 参数,前提是你已经安装了openssl-0.9.8a (建议安装0.9.8a 测试过0.9.7i有些bug)
该步骤执行结束后,一定要观察仔细,是否有这行
  SSL support:     enabled (OpenSSL)
如果你的是
  SSL support:     no 
那就是说,你的curl依旧没有支持https

make  &&  make install 
在make的时候,也许你会遇到这样的错误:
`a local symbol‘ can not be used when making a shared object; recompile with -fPIC
libssl.a: could not read symbols: Bad value
解决办法,请参考http://mylinux.5d6d.net/viewthread.php?tid=1013
安装完成后,再次运行
curl安装目录/bin/curl -V
结果为
Protocols: dict file ftp gopher http https imap pop3 rtsp smtp telnet tftp
这说明已经支持了https

剩下的就是重新编译php, 当然相应的支持curl的参数为  --with-curl=你的curl安装目录

php中curl不支持https的解决办法,布布扣,bubuko.com

时间: 2024-10-18 00:05:54

php中curl不支持https的解决办法的相关文章

Linux下PHP5.2安装curl扩展支持https

问题: 线上运行的LNMP服务器,因历史原因安装的curl模块只支持http,不支持https.类似请求或POST微信接口(小程序),都无法正常使用. 一.解决方法: 编译安装curl,重新编译php,使php的curl模块支持https. cd /data0/software1.下载安装curlwget http://curl.haxx.se/download/curl-7.44.0.tar.gztar zxvf curl-7.44.0.tar.gzcd curl-7.44.0./config

curl不能支持https问题

默认情况下,libcurl不支持https, 如果使用https链接,就会出现" Protocol https not supported or disabled in libcurl" 的错误提示.查看curl是否支持https可以使用命令: curl -V. curl有两种方式使用https : 1. 设定为不验证证书和HOST code = curl_easy_setopt(handle, CURLOPT_SSL_VERIFYPEER, 0L); 2. 设定一个SSL判别证书 h

20170514002Oracle 11g R2安装过程中遇到的报错及解决办法

Oracle 11g R2安装过程中遇到的报错及解决办法 1.提示Check if the DISPLAYvariable is set.    Failed<<<< 解决方案: #xhost +  //切换到root用户输入 #su – Oracle  //切换到oracle用户 $./runInstaller  //执行安装程序 xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB上的应用程序时, 做为应用程序来说,hostA

Linux内核,文件系统移植过程中出现的一些问题与解决办法

1.bootm地址和load address一样 此种情况下,bootm不会对uImage header后的zImage进行memory move的动作,而会直接go到entry point开始执行.因此此时的entry point必须设置为load address + 0x40.如果kernel boot过程没有到uncompressing the kernel,就可能是这里设置不对. boom address == load address == entry point - 0x40 2.

谷歌浏览器Chrome不再支持showModalDialog的解决办法

问题重现 弹出窗口编码: JavaScript 0 1 2 3 4 5 6 7 var obj = new Object(); var retval = window.showModalDialog("request.aspx",obj,"dialogWidth=500px;dialogHeight=300px"); if (retval == null) { ... }else { ... } 浏览器异常: Shell 0 1 Uncaught TypeError

让IE完美支持HTML5(css3)解决办法

貌似以前与大家分享过此类问题,HTML5/CSS3那些炫丽实用的效果,真得让人很眼谗,但悲催的IE浏览器,只有IE9才支持HTML5,这让我们很失望啊,但真的就没有一点办法了吗?其实补救方法还是有的,下面介绍的几种方法,可让客户端浏览器完美支持CSS3.HTML5: 第一种方法:IE9以下版本的IE将创建HTML5标签, 非IE浏览器会忽略这段代码,因此不会发生http请求,也就不影响网页执行效率. <!--[if lt IE9]> <script> (function() { i

IntelliJ IDEA中Maven插件无法更新索引之解决办法

IT草根 WangXu's 代码馆 BLOG Home Archives Resume Links About IntelliJ IDEA中Maven插件无法更新索引之解决办法 By Wang Xu 发表于 2015-12-09 文章目录 1. Maven的仓库.索引 2. IntelliJ IDEA利用索引实现自动补全 3. IntelliJ IDEA中Maven插件配置 4. IntelliJ14.1更新索引失败原因 5. 使用国内Maven仓库的镜像 6. 下载Maven仓库的索引 7. 

zblogasp中出现ytcms未知错误的解决办法

zblogasp确实是...出现了报错居然是“未知错误”.完全不知道怎么去找到问题并修复好吧. 不过遇到的问题多了也就大概能猜到大概是什么错误了,这也许就是所谓的经验吧.本文为大家讲下zblogasp在使用过程中出现ytcms未知错误的解决办法. 出现这种错误一般是主题使用了cms调用模式.先打开后台主题配置,看有没有调用栏目ID的选项.如果有,那么问题就解决了大半,出现未知错误的原因就是主题所需要调用的栏目根本不存在造成的. 這样说可能并不是很好懂,来图片说明: 如下图,后台主题配置说明里面写

jQuery中对checkbox设置checked无用解决办法

1. 对html中的多选框设置选择和取消选择,如  $("#id").attr('checked',true);$("#id").attr('checked',false).如果在调试栏中查看elements属性,可以看出,checked是已经设置成功了的,但是在html中不能表现出来. 2. 解决办法 :用prop设置.prop的值为ture或者false.方法如下: $("#id").prop('checked',true); $("