php curl 获取https请求的2种方法

 更新时间:2015年04月27日 09:34:42   投稿:junjie  
这篇文章主要介绍了php curl 获取https请求的2种方法,本文给出设定为不验证证书和host、设定一个正确的证书二种常用做法的代码实例,需要的朋友可以参考下

今天一个同事反映,使用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。

在执行curl_exec()之前。设置option

复制代码 代码如下:

$ch = curl_init();

......

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

方法二、设定一个正确的证书。

本地ssl判别证书太旧,导致链接报错ssl证书不正确。

我们需要下载新的ssl 本地判别文件

http://curl.haxx.se/ca/cacert.pem

放到 程序文件目录

curl 增加下面的配置

复制代码 代码如下:

   curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,true); ;
   curl_setopt($ch,CURLOPT_CAINFO,dirname(__FILE__).'/cacert.pem');

大功告成

(本人验证未通过。。。报错信息为:SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed)

如果对此感兴趣的话可以参看国外一大神文章。http://unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/

相关文章

  • 解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory

    解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or direc

    这篇文章主要给大家介绍了关于解决在PHP 7编译安装遇到的错误错误:cannot stat ‘phar.phar’: No such file or directory问题的相关资料,文中给出详细的解决方法,需要的朋友可以参考借鉴。
    2017-02-02
  • PHP数组遍历的几种常见方式总结

    PHP数组遍历的几种常见方式总结

    这篇文章主要介绍了PHP数组遍历的几种常见方式,结合实例形式总结分析了php数组遍历相关的循环、指针、数组函数等操作技巧,需要的朋友可以参考下
    2019-02-02
  • PHP实现C#山寨ArrayList的方法

    PHP实现C#山寨ArrayList的方法

    这篇文章主要介绍了PHP实现C#山寨ArrayList的方法,通过一个php自定义类模拟实现C#中ArrayList的功能,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • php实现的树形结构数据存取类实例

    php实现的树形结构数据存取类实例

    这篇文章主要介绍了php实现的树形结构数据存取类,实例演示了以树形数据结构存取数据的实现方法,对于学习基于PHP的数据结构有一定的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • php中常见的sql攻击正则表达式汇总

    php中常见的sql攻击正则表达式汇总

    这篇文章主要介绍了php中常见的sql攻击正则表达式,实例汇总了针对各种常见的SQL语句及正则表达式原理的分析与应用,对于PHP程序设计的安全来说具有很好的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • php 动态执行带有参数的类方法

    php 动态执行带有参数的类方法

    PHP中,在事先知道类和类的方法名称,使用call_user_func函数可以做动态执行。
    2009-04-04
  • php feof用来识别文件末尾字符的方法

    php feof用来识别文件末尾字符的方法

    程序需要一种标准的方式来识别何时到达文件的末尾.这个标准通常称为文件末尾,或EOF字符。
    2010-08-08
  • php中addslashes函数与sql防注入

    php中addslashes函数与sql防注入

    这篇文章主要介绍了php中addslashes函数与sql防注入,实例讲述了采用addslashes函数对于sql防注入的用处,对于PHP安全程序设计来说具有不错的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • 两种php去除二维数组的重复项方法

    两种php去除二维数组的重复项方法

    这篇文章主要介绍了两种php去除二维数组的重复项方法,大家可以进行比较看哪一种更适合自己,需要的朋友可以参考下
    2015-11-11
  • mysql建立外键

    mysql建立外键

    mysql建立外键...
    2006-11-11

最新评论