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安装目录

时间: 2024-10-26 15:24:26

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

Linux下PHP安装curl扩展支持https例子

问题:   线上运行的lamp服务器,默认yum安装的curl模块只支持http,不支持https.   解决方法:   编译安装curl,重新编译php,使php的curl模块支持https.   具体步骤:   1.下载curl   cd /usr/local/src  #进入安装包存放目录   wget http://curl.haxx.se/download/curl-7.44.0.tar.gz  #下载   2.安装curl   cd /usr/local/src   tar zxvf

Linux系统PHP安装curl扩展支持https教程详解

问题: 线上运行的lamp服务器,默认yum安装的curl模块只支持http,不支持https. 解决方法: 编译安装curl,重新编译php,使php的curl模块支持https. 具体步骤: 1.下载curl cd /usr/local/src  #进入安装包存放目录 wget http://curl.haxx.se/download/curl-7.44.0.tar.gz  #下载 2.安装curl cd /usr/local/src tar zxvf curl-7.44.0.tar.gz 

Wireshark无法解密HTTPS数据解决办法

介绍 网络封包  分析软件的功能 可想像成 "电工技师使用电表来量测电流.电压.电阻" 的工作 - 只是将场景移植到网络上,并将电线替换成网络线.在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件.Ethereal的出现改变了这一切.在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利.Ethereal是目前全世界最广泛的网络封包分析软件之一. Wireshark无法解密HTTPS数据解决办法 问题 由于需要定

AndroidGUI27中findViewById返回null的快速解决办法_Android

 在用Eclipse进行Android的界面开发,通过findViewById试图获取界面元素对象时,该方法有时候返回null,造成这种情况主要有以下两种情形. 第一种情形是最普通的. 比如main.xml如下,其中有一个ListView,其id为lv_contactbook <?xml version="1.0"encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.

本地php环境不支持curl_exec的解决办法

在测试安装某源码时,安装程序检测到本地php环境不支持curl_exec         我果断进行了一阵搜索后,东拼西凑找到了一些php环境不支持curl_exec的解决办法,通过自己实际操作解决了这个问题.以下是自己操作后总结的方法: 1.在C盘的windows目录下找到PHP.INI配置文件,使用PHP编辑器打开,找到extension_dir = "../",改为自己php安装目录下ext目录的绝对路径,如:extension_dir = "C:/AppServ/ph

AndroidGUI27中findViewById返回null的快速解决办法

在用Eclipse进行Android的界面开发,通过findViewById试图获取界面元素对象时,该方法有时候返回null,造成这种情况主要有以下两种情形. 第一种情形是最普通的. 比如main.xml如下,其中有一个ListView,其id为lv_contactbook <?xml version="1.0"encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.a

ubuntu中laravel提示缺少mcrypt扩展解决办法

mcrypt是一个加密的扩展了,在php中如果要使用此加密就必须安装mcrypt扩展了,下面我们来看看在ubuntu中laravel提示缺少mcrypt扩展解决办法,希望下文对你有帮助. 解决办法. sudo apt-get install php5-mcrypt sudo mv -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available sudo php5enmod mcrypt service apache2 restart 上面的方法不知

在ASP.net中的UpdatePanel,弹窗失败解决办法

原文:在ASP.net中的UpdatePanel,弹窗失败解决办法 最开始我用: Response.Write("<script>alert('和哈呵呵呵呵呵呵!')</script>"); 在没有UpdatePanel时,这个有效,能够正确弹出提示窗口. 后面,页面改进,加上局部刷新后,该方式失效了.探索出新的方式:   ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(),

访问本页面 您的浏览器需要支持JavaScript的解决办法

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 百度site:首页出现"访问本页面,您的浏览器需要支持JavaScript".这样的情况,对于一个刚刚引起搜索引擎重视的新站来说是相当大的打击,需要尽快找出原因跟解决办法. 首先分析原因,用站长工具模拟搜索引擎蜘蛛抓取,结果却是"访问本页面,您的浏览器需要支持JavaScript".用谷歌管理员工具中实