(转)php 使用cURL发起https(ssl)请求时注意事项

使用curl发起https请求的时候报错:“SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed”

很明显,验证证书的时候出现了问题。 html

使用curl若是想发起的https请求正常的话有2种作法: curl

方法1、设定为不验证证书和host。 函数

在执行curl_exec()以前。设置option url

$ch = curl_init(); spa

...... htm

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

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

本地ssl判别证书太旧,致使连接报错ssl证书不正确。 get

咱们须要下载新的ssl 本地判别文件 it

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

放到 程序文件目录

curl 增长下面的配置

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

大功告成

PHP中CURL方法curl_setopt()函数的一些参数 http://blog.sina.com.cn/s/blog_40e4b5660100sxa3.html

以上信息供参考
相关文章
相关标签/搜索